Django celery celery.py 无法 from celery import Celery

2018-06-08 18:33:04 +08:00
 davinci

根着官网的 demo 创建了celery.py

from __future__ import absolute_import, unicode_literals
import os
from celery import Celery

但是 pycharm 提示 unresoloved reference Celery

这是怎么回事呢

2645 次点击
所在节点    Python
8 条回复
lpd0155
2018-06-08 18:40:32 +08:00
面向谷歌编程了解一下
lpd0155
2018-06-08 18:42:26 +08:00
yongzhong
2018-06-08 18:43:00 +08:00
你的模块叫 celery,官方库也叫 celery
Semesse
2018-06-08 18:48:32 +08:00
你创建的文件名不能和要 import 的重名,不然会 import 到自己
我第一次用 tornado 就是这样的🌚
davinci
2018-06-08 18:53:55 +08:00
@yongzhong @Semesse
官方 demo 说 from __future__ import absolute_import 这样就能避免本地的 celery.py 和 celery 库冲突
但是依然冲突了。
我贴的代码就是官方给的例子
crb912
2018-06-08 22:22:00 +08:00
打开 pycharm 设置,里面的解释器选项,确认 celery 模块已经别加载了。
crb912
2018-06-08 22:48:25 +08:00
不太明白你在 django 的目录中,为什么要新建一个 celery.py
我不建议这么做。你只需要新建一个 tasks.py ,里面写上你的任务。

然后在 Django 的 setting.py 中配置 celery 的参数,(当然,如果你嫌麻烦,你可以新建一个单独的 celery 配置模块,比如名字叫 celeryconfig.py),这里面需要配置后端数据库,定时任务的时间,配合 djcelery 是最完美的。

建议参考下文章:
http://www.mamicode.com/info-detail-2278246.html
(网上搜的,打开居然一看,转载了我的)
crb912
2018-06-08 22:52:15 +08:00
不嫌麻烦就新建一个 celery 的配置文件,不要取与 celery 重名。
想偷懒的话,按照上面的博文去操作即可。
所有的配置都撸在 settings.py 里面。简简单单,逻辑清晰,代码也不算混乱。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/461602

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX