Django-регистрация частично включена в django, получая ошибку имени - PullRequest
0 голосов
/ 10 февраля 2012

Я установил django-регистрацию с pip, версия 0.7.

Затем с

urls.py

from core.forms import UserRegistrationForm

from registration.views import register

urlpatterns = patterns('',

    url(r'^accounts/register/$', register, {'backend': 'registration.backends.default.DefaultBackend','form_class': RegistrationForm}, name='registration_register'),
    (r'^accounts/', include('registration.urls')),

)

core / forms.py

from django import forms
from registration.forms import RegistrationForm
class UserRegistrationForm(RegistrationForm):
    name = forms.CharField()

Я получаю ( updated )

ImportError at /accounts/register/

No module named forms

Теперь, если с оболочкой я делаю:

>>> import registration.forms

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/registration/forms.py", line 9, in <module>
    from django.contrib.auth.models import User
  File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/models.py", line 7, in <module>
    from django.db import models
  File "/usr/local/lib/python2.6/dist-packages/django/db/__init__.py", line 14, in <module>
    if not settings.DATABASES:
  File "/usr/local/lib/python2.6/dist-packages/django/utils/functional.py", line 276, in __getattr__
    self._setup()
  File "/usr/local/lib/python2.6/dist-packages/django/conf/__init__.py", line 40, in _setup
    raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.

я получаю эту ошибку.

Но import registration идет хорошо, и я использую в urls.py registration.views.register без проблем.

Что я могу сделать, чтобы решить эту проблему?

ОБНОВЛЕНИЕ : благодаря @DrTyrsa я попытался с оболочкой python manage.py

, и импорт registration.forms работает, но не работает в моем файле

>>> import registration.forms
>>> import core.forms
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/var/www/vhosts/opineo/core/forms.py", line 2, in <module>
    from registration.forms import RegistrationForm
ImportError: No module named forms

я не понимаю, почему .. регистрация установлена ​​с помощью pip, и она находится в пути python

1 Ответ

2 голосов
/ 11 февраля 2012

решение "я идиот":)

пока я проверял все, я заметил, что у меня есть папка с именем регистрации и init .py внутри.

Это перезаписывает django-регистрацию include;переименовал его и ошибка исчезла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...