- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 django 1.10.5 和 celery 4.0.2。我有这样的结构。
-proj
-application
__init__.py
celery.py
celery_conf.py
settings.py
tasks.py
urls.py
wsgi.py
-extuser (application with extended UserModel)
-pages
-migrations
-templates
__init__.py
admin.py
apps.py
forms.py
models.py
tasks.py
tests.py
views.py
celery -A application worker -l INFO -B
Traceback (most recent call last):
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/bin/celery", line 11, in <module>
sys.exit(main())
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/__main__.py", line 14, in main
_main()
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/celery.py", line 326, in main
cmd.execute_from_commandline(argv)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/celery.py", line 488, in execute_from_commandline
super(CeleryCommand, self).execute_from_commandline(argv)))
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/base.py", line 281, in execute_from_commandline
return self.handle_argv(self.prog_name, argv[1:])
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/celery.py", line 480, in handle_argv
return self.execute(command, argv)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/celery.py", line 412, in execute
).run_from_argv(self.prog_name, argv[1:], command=argv[0])
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/worker.py", line 221, in run_from_argv
return self(*args, **options)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/base.py", line 244, in __call__
ret = self.run(*args, **kwargs)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/bin/worker.py", line 255, in run
**kwargs)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/worker/worker.py", line 94, in __init__
self.app.loader.init_worker()
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/loaders/base.py", line 116, in init_worker
self.import_default_modules()
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/loaders/base.py", line 111, in import_default_modules
return [self.import_task_module(m) for m in self.default_modules]
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/loaders/base.py", line 97, in import_task_module
return self.import_from_cwd(module)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/loaders/base.py", line 106, in import_from_cwd
package=package,
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/utils/imports.py", line 101, in import_from_cwd
return imp(module, package=package)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/celery/loaders/base.py", line 100, in import_module
return importlib.import_module(module, package=package)
File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/src/pages/tasks.py", line 4, in <module>
from extuser.models import UserLinksArchive
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/src/extuser/models.py", line 5, in <module>
from django.contrib.auth.models import AbstractBaseUser
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/django/contrib/auth/models.py", line 4, in <module>
from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/django/contrib/auth/base_user.py", line 52, in <module>
class AbstractBaseUser(models.Model):
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/django/db/models/base.py", line 105, in __new__
app_config = apps.get_containing_app_config(module)
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 237, in get_containing_app_config
self.check_apps_ready()
File "/home/dmitriy/MyEnv/DjangoProjects/sPrint/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 124, in check_apps_ready
raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
from __future__ import absolute_import, unicode_literals
from application.celery import app
from extuser.models import UserLinksArchive
@app.task
def link_destroy_task(link_id):
link = UserLinksArchive.objects.get(id=link_id)
link.delete()
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.conf import settings
from django.contrib.auth.models import AbstractBaseUser
from django.contrib.auth.models import PermissionsMixin
from django.contrib.auth.models import BaseUserManager
from django.core.validators import MinValueValidator, MinLengthValidator
from django.db import models
class MyUserManager(BaseUserManager):
def create_user(self, username, password=None, **extra_fields):
if not username:
raise ValueError(u'No user')
user = self.model(username=username)
if password:
user.set_password(password)
user.save(using=self._db)
return user
def create_superuser(self, username, password):
user = self.create_user(username, password)
user.is_admin = True
user.is_superuser = True
user.save(using=self._db)
return user
class ExtUser(AbstractBaseUser, PermissionsMixin):
username = models.CharField(
max_length=255,
null=False,
unique=True,
validators=[MinLengthValidator(6)]
)
balance = models.FloatField(
default=0.0,
validators=[MinValueValidator(0.0)]
)
is_active = models.BooleanField(
default=True
)
is_admin = models.BooleanField(
default=False
)
def get_full_name(self):
return self.username
@property
def is_staff(self):
return self.is_admin
def get_short_name(self):
return self.username
def __str__(self):
return self.username
USERNAME_FIELD = 'username'
REQUIRED_FIELDS = []
objects = MyUserManager()
class Meta:
db_table = 'auth_user'
LINKTYPE = (
('p', 'Password restore'),
('o', 'Other'),
)
class UserLinksArchive(models.Model):
user = models.ForeignKey(
settings.AUTH_USER_MODEL,
default=1
)
hash = models.CharField(
max_length=32,
default=None,
unique=True
)
created_at = models.DateTimeField(
auto_now_add=True
)
type = models.CharField(
max_length=1,
default='o',
choices=LINKTYPE
)
#application/celery.py
# coding=utf-8
from __future__ import absolute_import, unicode_literals
import os
from celery import Celery
# set the default Django settings module for the 'celery' program.
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'application.settings')
app = Celery('application')
# Using a string here means the worker don't have to serialize
# the configuration object to child processes.
# - namespace='CELERY' means all celery-related configuration keys
# should have a `CELERY_` prefix.
app.config_from_object('application.celery_conf', namespace='CELERY')
# Load task modules from all registered Django app configs.
app.autodiscover_tasks()
#application/celery_conf.py
# CELERY SETTINGS ALARMA
from django.conf import settings
CELERY_IMPORTS = ("application.tasks", "pages.tasks")
CELERY_BROKER_BACKEND = 'redis'
CELERY_BROKER_URL = settings.REDIS_URL
CELERY_RESULT_BACKEND = settings.REDIS_URL
CELERY_TASK_RESULT_EXPIRES = 60 * 60 * 24
CELERY_TIMEZONE = 'Europe/Moscow'
最佳答案
如果您在 tasks.py 的方法中导入 UserLinksArchive,则可以解决此问题
像这样的东西:
@app.task
def link_destroy_task(link_id):
from extuser.models import UserLinksArchive
link = UserLinksArchive.objects.get(id=link_id)
link.delete()
关于django - 为什么当我尝试在 celery 任务中使用模型时,django 会引发 "Apps aren' t 已加载”错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42249088/
自从我处理 django 以来已经有一段时间了,我正在处理一些可能有点旧的代码,现在是 Django 1.7。这个堆栈跟踪是关于什么的? 它不是通过 runserver 发生的,而是通过使用应用程序模
出于某种原因,我的表格行间距不正确,只是将新行覆盖在旧行上。我得到的不是 2 行表,而是 1 行表,其中 2 行相互重叠。这是我的代码的相关部分:
我正在尝试使用自定义用户安装 django-registration-redux。 我已将此包含在我的 settings.py 中: AUTH_USER_MODEL = 'app.customUser
我已在 azure 门户中设置了 Azure Frontdoor。我已经创建了 2个前端主机 myappdev1.azurefd.net dev1.myapp.com 后端池具有以下内容 1.Back
我已在 azure 门户中设置了 Azure Frontdoor。我已经创建了 2个前端主机 myappdev1.azurefd.net dev1.myapp.com 后端池具有以下内容 1.Back
使用来自 Django tutorial 的(部分)投票应用程序例如,我正在尝试获取 pytest-django运行。 使用命令 django-admin startproject mysite2 ,
因此,我尝试向 Django 1.10 应用程序添加一些代码,这些代码仅在服务器启动时运行。我从 here 获取了有关如何执行此操作的说明。和 here 。每次我尝试运行 python 控制台时,我都
我在 IntelliJ IDEA 中使用 Kotlin 插件时遇到问题。首先,打开一个kotlin项目,弹出我需要在这个项目中配置kotlin。但是当我从“工具”菜单中这样做时,它会显示“没有可用的配
请注意,我已经查看了这些线程,但它们没有解决我的问题: (过时的信息,请参阅下面的文档)Access Snowflake query results through PowerBI (我希望这能解决我
当 7 个可用列中的任何 3 个包含该行的数据时,我需要包含行。有没有做类似事情的最佳实践?我想出的解决方案似乎很好,只是想知道是否有更可接受的模式?见 here了解详细信息。以下是我要完成的工作的要
babel-preset-es2015已安装,并且可以使用 es6 功能,如下面 let a = 2; . 但无法使用 es6 模块功能 import fs from 'fs'如下: $ babel-
当我尝试将 View 导入 django 应用程序的 apps.py 模块时出现此错误。我正在使用 django 2.2.9、python 3.7.6、django-oscar 2.0.4。我已覆盖结
我正在使用此代码来填充我的数据库: import os def populate(): python_cat = add_cat('Python') add_page(cat=pyth
我已经将我的 django webapp 部署到我的 heroku 服务器并且它工作正常,直到我添加了一个 websocket 连接,该连接在创建模型对象后立即在单独的 url 中显示该模型对象的内容
尝试阅读文档并纠正一些与 sass 相关的问题。向组件添加了“lang=scss”,但不确定如何解决此问题。任何指导都会有所帮助。 rollup v2.19.0 bundles src/main.js
我使用 django 1.10.5 和 celery 4.0.2。我有这样的结构。 -proj -application __init__.py celery.py cel
所以我正在学习这个 javascript 游戏制作教程,但我真的找不到我做了什么才能使我的红色方 block 不显示在屏幕上。事实上,我确实认为这是速度问题,因为当我在控制台中更改对象的速度时,它出现
从 1.8 升级到 django 1.9 时出现此错误。我检查了类似问题的答案,但我认为这不是任何第三方软件包或应用程序的问题。 Traceback (most recent call last):
我从 Django 1.8 升级到 1.9 但遇到了这个问题 django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet. s
我有一个功能性 Django 应用程序,在我看来它有许多 Google Text-To-Speech API 调用和数据库读/写。在本地测试时,加载页面大约需要 3 秒,但是当我将应用程序实时部署到
我是一名优秀的程序员,十分优秀!