2017-04-10 26 views
1
应用

我想使用https://github.com/arneb/django-messages包我的消息的东西,尝试了以下RuntimeError:模型类django_messages.models.Message没有声明明确app_label,而不是在INSTALLED_APPS

pip install git+https://github.com/arneb/django-messages.git 

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sites', 
    'rest_framework', 
    'rest_framework.authtoken', 
    'oauth2_provider', 
    'api', 
    'localflavor', 
    'django_localflavor_us', 
    'django_countries', 
    'haystack', 
    'django_messages', 

] 

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^messages/', include('django_messages.urls')), 
] 

当我运行python manage.py runserver我得到了以下错误:

Unhandled exception in thread started by <function wrapper at 0x107cedaa0> 
Traceback (most recent call last): 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/utils/autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 121, in inner_run 
    self.check(display_num_errors=True) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/management/base.py", line 374, in check 
    include_deployment_checks=include_deployment_checks, 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/management/base.py", line 361, in _run_checks 
    return checks.run_checks(**kwargs) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/checks/registry.py", line 81, in run_checks 
    new_errors = check(app_configs=app_configs) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/checks/urls.py", line 14, in check_url_config 
    return check_resolver(resolver) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/core/checks/urls.py", line 24, in check_resolver 
    for pattern in resolver.url_patterns: 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/utils/functional.py", line 35, in __get__ 
    res = instance.__dict__[self.name] = self.func(instance) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/urls/resolvers.py", line 313, in url_patterns 
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/utils/functional.py", line 35, in __get__ 
    res = instance.__dict__[self.name] = self.func(instance) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/urls/resolvers.py", line 306, in urlconf_module 
    return import_module(self.urlconf_name) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/Users/shivakrishna/shiva/Office_projects/iPitch/project /project /urls.py", line 23, in <module> 
    url(r'^messages/', include('django_messages.urls')), 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/conf/urls/__init__.py", line 50, in include 
    urlconf_module = import_module(urlconf_module) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django_messages/urls.py", line 4, in <module> 
    from django_messages.views import * 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django_messages/views.py", line 11, in <module> 
    from django_messages.models import Message 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django_messages/models.py", line 48, in <module> 
    class Message(models.Model): 
    File "/Users/shivakrishna/.virtualenvs/project /lib/python2.7/site-packages/django/db/models/base.py", line 113, in __new__ 
    "INSTALLED_APPS." % (module, name) 
RuntimeError: Model class django_messages.models.Message doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS. 

我能知道这是为什么错误发生,如何解决这个问题的原因是什么?

+0

你有使用您的留言模型在应用程序循环的开头任何信号? 也是愚蠢的问题,但你已经在安装的应用程序中放置'django-messages'之后迁移? –

+0

不,我没有任何信号,我只是把它放在已安装的应用程序中,并运行'python manage.py runserver',即使在试图运行'python manage.py migrate'时,我也得到相同的错误,不知道为什么 –

+0

你有没有发布整个安装的应用程序部分?你的应用名称是什么?它在哪里? –

回答

0

如在这些问题说明很多答案:

  1. RemovedInDjango19Warning: Model doesn't declare an explicit app_label
  2. Django 1.9 deprecation warnings app_label

你得到有关使用模型前,它被应用程序初始化错误。

您在说明,你是不是使用执行在初始化信号您的评论,所以搜索:

  1. 调用初始化任何方法和使用模型,或django-messages模型。如果您有任何问题,请尝试在app.pyMyAppConfig类中放置这些方法调用。
  2. 如果你在你执行任何相对路径,将其改为确切的模块路径:

    from .models import MyModel 
    from .messages import * 
    
    to 
    
    from apps.myapp.models import MyModel 
    django.messages import * 
    
相关问题