Текущий путь, account / home.html, не соответствует ни одному из этих - PullRequest
0 голосов
/ 13 января 2019

Я читал документы и уже ответил на несколько вопросов, но, похоже, ничего не работает, так что вот этот вопрос. Я начинаю с django и не могу избавиться от следующей ошибки:

Using the URLconf defined in alpha_trader.urls, Django tried these URL patterns, in this order:

__debug__/
[name='home']
accounts/update [name='user_change']
accounts/ login/ [name='login']
accounts/ logout/ [name='logout']
accounts/ password_change/ [name='password_change']
accounts/ password_change/done/ [name='password_change_done']
accounts/ password_reset/ [name='password_reset']
accounts/ password_reset/done/ [name='password_reset_done']
accounts/ reset/<uidb64>/<token>/ [name='password_reset_confirm']
accounts/ reset/done/ [name='password_reset_complete']
accounts/signup [name='user_signup']
The current path, accounts/update.html, didn't match any of these.

Настоящим мои settings.py:

# Custom Django auth settings

AUTH_USER_MODEL = 'accounts.User'

LOGIN_URL = 'login'

LOGOUT_URL = 'logout'

LOGIN_REDIRECT_URL = 'home'

LOGOUT_REDIRECT_URL = 'home'

Настоящим urls.py:

from django.urls import include, path
from django.conf import settings

from accounts import views

urlpatterns = [
    path('', include('accounts.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('accounts/signup', views.SignUpView.as_view(), name='user_signup'),
]

Настоящий аккаунт / urls.py:

from django.urls import include, path
from accounts import views

urlpatterns = [
    path('', views.home, name='home'),
    path('accounts/update', views.UserUpdateView.as_view(), name='user_change'),
]

Настоящим account / views.py:

def home(request):
    if request.user.is_authenticated:
            return redirect('accounts/home.html')
    return render(request, 'accounts/home.html')

и, наконец, account / models.py:

from django.contrib.auth.models import AbstractUser
from django.db import models
from django.utils.html import escape, mark_safe


class User(AbstractUser):
    is_student = models.BooleanField(default=False)
    num_of_saved_backtests=models.IntegerField(default=0)
    num_of_online_indicators=models.IntegerField(default=0)

Кто-нибудь видит ошибку в моем коде? ВАЖНАЯ ИНФОРМАЦИЯ Я могу использовать дом, когда я не вошел в систему. Он не работает тот, который мне удалось войти как пользователь ...

1 Ответ

0 голосов
/ 13 января 2019

return redirect('accounts/home.html') В этой строке не перенаправляйте на путь к файлу, но вместо этого вы можете использовать имя функции или имя URL , в зависимости от того, где Вы хотите перенаправить на.

return redirect('url_name') # or redirect('function_name')

Также перенаправление не может быть таким же, если условие будет таким же, это будет сводиться к бесконечному циклу.

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