Я создал новое приложение как register
, и при попытке установить ссылку в html его страница не перенаправлялась после нажатия ссылки
Проект settings.py
:
INSTALLED_APPS = [
'questions.apps.QuestionsConfig',
'register.apps.RegisterConfig', # registered new app
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'crispy_forms',
]
Project's urls.py
:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('questions.urls')),
path('register/', include('register.urls')) #Linked apps urls.py
]
Зарегистрировать приложения views.py
:
from django.shortcuts import render, redirect
from django.http import HttpResponse
from .forms import RegisterForm
# Create your views here.
def register(request):
if request.method == "POST":
form = RegisterForm(request.POST)
if form.is_valid():
form.save()
return redirect("/")
else:
form = RegisterForm()
return render(request,'register.html',{'form':form})
def test(request):
return render(request,'test.html',{'form':form})
Зарегистрировать приложения urls.py
:
from django.urls import path
from . import views
urlpatterns = [
path('register', views.register, name='register'),
]
Когда я использую http://127.0.0.1:8000/register/register
в адрес браузера, то он работает нормально.
вывод в браузере:
But when I use href
tag in html to render register.html page, I am getting error.
when tried:
Регистрация
Я ничего не получаю а в URL-адресе браузера он отображается как
http://127.0.0.1:8000/#link
при использовании:
<a href="#link" class="btn btn-info" href="{% url 'register/register' %}">Register</a>
получение ошибки как:
NoReverseMatch at /
Reverse for 'register/register' not found. 'register/register' is not a valid view function or pattern name.