Django Страница не найдена (404) - Текущий путь, Не соответствует ни одному из этих путей

Я пытаюсь добавить клинику из профиля пользователя, однако, я получаю 404 страницу не найдена, и я заметил, что одна цитата добавляется к URL:

http://127.0.0.1:8000/profile/'/clinic/add_clinic/

Любая помощь будет принята с благодарностью.

Ниже приведены URL-адреса моих проектов:

urlpatterns = [
    # django admin
    path('admin/', admin.site.urls),

    # User management
    path('accounts/', include('allauth.urls')),



    # local apps
    path('', include('pages.urls')), # new
    path('clients/', include('clients.urls')), # new
    path('behaviors/', include('behaviors.urls')),
    path('clientsessions/', include('clientsessions.urls')),
    path('profile/', include('users.urls')),
    path('clinic/', include('clinic.urls')),
]   + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Вот URL-адреса из приложения пользователей

urlpatterns = [
    path('', views.profile, name='profile'),
]

Вот вид профиля

@login_required
def profile(request):
    if request.method == 'POST':
        user_form = UpdateUserForm(request.POST, instance=request.user)
        profile_form = UpdateProfileForm(request.POST, request.FILES, instance=request.user.profile)

        if user_form.is_valid() and profile_form.is_valid():
            user_form.save()
            profile_form.save()
            messages.success(request, 'Your profile is updated successfully')
            return redirect(to='users-profile')
    else:
        user_form = UpdateUserForm(instance=request.user)
        profile_form = UpdateProfileForm(instance=request.user.profile)

    return render(request, 'users/profile.html', {'user_form': user_form, 'profile_form': profile_form})

Вот URLs rom the clinic app

urlpatterns = [
    path('clinic/', views.clinic, name='clinic'),
    path('add_clinic/', views.add_clinic, name='add_clinic'),
    
]

А вот представление add_clinic

@login_required
@allower_users(allowed_roles=['admin'])
def add_clinic(request):
    if request.method == 'POST':
        name = request.POST.get('name')

        if name:
            name = Clinic.objects.create(name=name, created_by=request.user)
            clinic.members.add(request.user)
            clinic.save()

            userprofile = request.user.profile
            userprofile.active_clinic_id = clinic.id
            userprofile.save()

            return redirect(to='users-profile')
    return render(request, 'clinic/add_clinic.html')

Похоже, что ваша ссылка написана неправильно, перепишите это:

<a href="'{% url 'clinic:add_clinic' %}">Create Clinic</a>

as:

<a href="'{% url 'add_clinic' %}">Create Clinic</a>

Это должно сделать это.

Вернуться на верх