NoReverseMatch at /project/836d5772-26da-4a9b-811c-806af5b10a41/

.Я получил эту ошибку на странице проектов; Reverse for 'edit-project' with arguments '('',)' not found. 1 pattern(s) tried: ['edit\-project/(?P[^/]+)/$']. Я пытаюсь создать представление редактирования для проектов

Мой views.py

from django.shortcuts import render, redirect
from .models import Project, Skill
from .forms import ProjectForm

# Create your views here.


# rendering our home template
def homePage(request):
    projects = Project.objects.all()
    skills = Skill.objects.exclude(body="")
    otherSkills = Skill.objects.filter(body="")
    context = {
        "Projects": projects,
        "Skills": skills,
        "Others": otherSkills,
    }
    return render(request, "base/home.html", context)


# creating a view for the projects template
def projectsPage(request, pk):
    project = Project.objects.get(id=pk)  # querying the object by its id
    context = {
        "Project": project,
    }
    return render(request, "base/projects.html", context)


# creating  a view for project_form template
def addProject(request):
    form = ProjectForm()

    # If request method is equal to POST, submit this form
    if request.method == "POST":
        # pass in the original post data and any files send from the frontend(we're sending files right to enctype)
        form = ProjectForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            return redirect("home")

    context = {
        "Form": form,
    }
    return render(request, "base/project_form.html", context)


# creating an edit  projects view
def editProject(request, pk):
    project = Project.objects.get(id=pk)
    form = ProjectForm(instance=project)

    if request.method == "POST":
        form = ProjectForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            return redirect("")

    context = {
        "Form": form,
    }
    return render(request, "base/project_form.html", context)

Мой urls.py

from django.urls import path
from . import views

urlpatterns = [
    path("", views.homePage, name='home'),
    path("project/<str:pk>/", views.projectsPage, name='projects'),
    path("add-project/", views.addProject, name='add-project'),
    path("edit-project/<str:pk>/", views.editProject, name='edit-project'),
]

Мои проекты.html

{% extends "base/main.html" %}

{% load static %}

{% block content %}


<div style="padding:3.5em;" class="container">
    <img class="project-image" src="{{Project.thumbnail.url}}" alt="">
    <h1>{{Project.title}}</h1>
    <hr>
    <p>{{Project.body}}</p>
    <a class="btn btn-warning" href="{% url 'edit-project' project.id %}">Edit</a>
</div>

{% endblock content %}

Ссылка Edit не отображается на projects.html (Выдает вышеуказанную ошибку, когда я нажимаю на любой из проектов). Я не очень понимаю, где может быть проблема. Любая помощь будет высоко оценена

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