添加窗体时Django中出现NoReverseMatch错误

2024-03-29 01:37:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我在django项目中创建了一个名为jobs的应用程序。我将作业urls.py文件包含到我的主urls.py文件中。你知道吗

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$', views.HomeView.as_view(), name="home"),
    url(r'^jobs/', include('jobs.urls', namespace="jobs")),
]

在我的作业urls.py文件中,我有一个url。你知道吗

urlpatterns = [
    url(r'^post/', views.post_view, name="post"),
]

以下是此url的视图代码。你知道吗

def post_view(request):
    form = forms.PostJobForm()
    return render(request, 'jobs/post_job_form.html', {'form': form})

这是这个表单的html。你知道吗

{% extends 'layout.html' %}

{% block title %}Post a Job{% endblock %}

{% block content %}

<form action="" method="POST">
    {{ form.as_p }}
    <input type="submit" value="Post Job"/>
</form>

{% endblock %}

下面是python代码的实际形式。你知道吗

class PostJobForm(forms.Form):
    title = forms.CharField(max_length=30)
    description = forms.CharField(widget=forms.Textarea)

自从我把这些东西添加到我的项目中,似乎什么都不起作用。每当我运行本地开发服务器并转到http://127.0.0.1:8000/,即项目的路由url或任何其他url时,我都会遇到以下错误:

NoReverseMatch at /jobs/post/
Reverse for 'jobs.views.' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

它后来说这是一个模板呈现错误,发生在第0行。怎么回事?我该怎么解决?你知道吗


Tags: 文件项目pyformviewurladminhtml