Почему я получаю перенаправление на неправильное представление в django?
Я пытаюсь переходить на разные страницы с помощью URL в django, я написал все коды, как в учебниках,
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index,name="index"),
path('', views.register,name="register"),
path('', views.login,name="login")
]
def index(request):
print("hello index")
return render(request,'index.html')
def register(request):
return render(request,'register.html')
def login(request):
print("hello login")
return render(request,'login.html')
но всякий раз, когда я нажимаю на ссылку register на моем HTML, он просто всегда переводит меня на index.html.
<ul class="nav">
<li><a href="{% url 'index' %}"> Home</a></li>
<li><a href="{% url 'register' %}"> Register</a></li>
<li><a href="{% url 'login' %}"> Login</a></li>
</ul>
Я также пробовал поместить что-то в маршруты
urlpatterns = [
path('admin/', admin.site.urls),
path('index', views.index,name="index"),
path('register', views.register,name="register"),
path('login', views.login,name="login")
]
но в этот раз он выдает ошибки типа Пустой путь не совпал ни с одним из них.
Я работал над разными проектами django, используя вышеупомянутый шаблон, и он работал совершенно нормально. Где я ошибаюсь? Любая помощь будет очень признательна!
у вас одинаковое имя пути, поэтому вам нужно указать разные пути для разных представлений.
для примера:
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index,name="index"),
path('registe/', views.register,name="register"),
path('login/', views.login,name="login")
]
def index(request):
print("hello index")
return render(request,'index.html')
def register(request):
return render(request,'register.html')
def login(request):
print("hello login")
return render(request,'login.html')