базовая настройка django-allauth

Я пытался следить за последней версией http://django-allauth.readthedocs.org/en/latest/#installation

urls.py файл выглядит так:

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)),
    url(r'^accounts/', include('allauth.urls')),
)

settings.py файл содержит:

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.sites',
    'allauth',
    'allauth.account',
    'allauth.socialaccount',
)

TEMPLATE_CONTEXT_PROCESSORS = (
    # Required by allauth template tags
    "django.core.context_processors.request",
    "django.contrib.auth.context_processors.auth",
    # allauth specific context processors
    "allauth.account.context_processors.account",
    "allauth.socialaccount.context_processors.socialaccount",
)

AUTHENTICATION_BACKENDS = (
    # Needed to login by username in Django admin, regardless of `allauth`
    "django.contrib.auth.backends.ModelBackend",
    # `allauth` specific authentication methods, such as login by e-mail
    "allauth.account.auth_backends.AuthenticationBackend",
)
SITE_ID = 1

и я запустил python manage.py syncdb, но когда я захожу на свой локальный хост: 8000 / accounts / login /, он дает мне страницу не найдена (404). Я также дважды проверил, что делал, с помощью учебника по адресу: http://www.sarahhagstrom.com/2013/09/the-missing-django-allauth-tutorial/, но я не уверен, что еще делать, чтобы появился базовый экран входа в систему. Есть указатели?

ИЗМЕНИТЬ

вот ошибка на странице в дополнение к Page Not Found 404

Using the URLconf defined in asa.urls, Django tried these URL patterns, in this order:
^admin/
^accounts/ ^ ^signup/$ [name='account_signup']
^accounts/ ^ ^login/$ [name='account_login']
^accounts/ ^ ^logout/$ [name='account_logout']
^accounts/ ^ ^password/change/$ [name='account_change_password']
^accounts/ ^ ^password/set/$ [name='account_set_password']
^accounts/ ^ ^inactive/$ [name='account_inactive']
^accounts/ ^ ^email/$ [name='account_email']
^accounts/ ^ ^confirm-email/$ [name='account_email_verification_sent']
^accounts/ ^ ^confirm-email/(?P<key>\w+)/$ [name='account_confirm_email']
^accounts/ ^ ^confirm_email/(?P<key>\w+)/$
^accounts/ ^ ^password/reset/$ [name='account_reset_password']
^accounts/ ^ ^password/reset/done/$ [name='account_reset_password_done']
^accounts/ ^ ^password/reset/key/(?P<uidb36>[0-9A-Za-z]+)-(?P<key>.+)/$ [name='account_reset_password_from_key']
^accounts/ ^ ^password/reset/key/done/$ [name='account_reset_password_from_key_done']
^accounts/ ^social/

Текущий URL-адрес, accounts / profile /, не соответствует ни одному из них.


person newbieProgrammer    schedule 08.04.2014    source источник


Ответы (1)


Просто чтобы проверить: вы запустили свой сервер?

python manage.py runserver

РЕДАКТИРОВАТЬ:

Похоже, вы пытаетесь использовать accounts/profile/, который не является зарегистрированным URL-адресом. При переходе на localhost:8000/accounts/register все равно выдает ошибку?

Кроме того, из docs:

Когда я пытаюсь войти в систему, я получаю ошибку 404 на / accounts / profile /

Оказавшись здесь, вы успешно вошли в систему. Однако вам нужно будет реализовать представление для этого URL-адреса самостоятельно, поскольку все, что будет отображаться здесь, зависит от конкретного проекта. Вы также можете решить перенаправить в другое место.

Похоже, вам нужно написать собственное представление для учетных записей / профиля /

Если хотите, можете настроить перенаправление для входа на другую страницу в settings.py. То есть:

LOGIN_REDIRECT_URL = "/"

Вы вернетесь на вашу домашнюю страницу.

person Alex    schedule 08.04.2014
comment
хаха да, я это начал. В разделе / admin я видел, что таблицы были созданы для сайтов и Socialaccount. - person newbieProgrammer; 08.04.2014
comment
Можете ли вы опубликовать более подробную информацию о полученной вами ошибке? - person Alex; 08.04.2014
comment
Я только что обновил сообщение с ошибкой, которая, похоже, включает URL-адреса из allauth.urls - person newbieProgrammer; 08.04.2014
comment
Хорошо, смотри мою новую правку. Я предполагаю, что вы уже вошли в систему, поэтому он перенаправляет вас на ваш LOGIN_REDIRECT_URL (по умолчанию в django это учетные записи / профиль. Вам нужно либо (1) изменить его в настройках, либо (2) добавить URL-адрес и просмотр для аккаунтов / профиль /. Дайте мне знать, если это имеет смысл. - person Alex; 08.04.2014
comment
Без проблем. Держись! Не сдавайся. Просто нужна практика. - person Alex; 08.04.2014
comment
Я действительно рад это видеть. Я только начинал с AllAuth. Для этого мне пришлось войти в систему с правами администратора и настроить профиль приложения. Тогда первое, что я сделал, это попытался протестировать его с помощью учетных записей / входа в систему, и он был перенаправлен на профиль, которого не существовало. Было дезориентировано, что я был перенаправлен на страницу, которую я не указал, которая не существует, и было трудно сказать, что это было потому, что AllAuth видел, что я уже вошел в систему. Увидев этот комментарий, я просто пошел к администратору и вышел из системы и БАМ! Все заработало. Довольно аккуратно. - person Doug Bradshaw; 17.01.2016