在djang没有反向匹配

2024-06-16 14:43:28 发布

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

我使用django创建了一个项目,搜索此url时出错:

http://localhost:8000/user/signup/

项目的url为:

urlpatterns = [
url(r'^user/', include("UserManager.urls")),
url(r'^movie/', include("MovieManager.urls")),
url(r'^home/', include("AdminManager.urls")),
url(r'^celebrity/', include("CelebrityManager.urls")),
url(r'^admin/', admin.site.urls),
]

UserManager应用程序的url为:

urlpatterns = [
url(r'^login/$', views.login_page, name='UserManager_login'),
url(r'^signup/$', views.signup_page, name='UserManager_signup'),
url(r'^showProfile/(?P<username>[a-zA-Z0-9]+)/$', views.view_profile, name='UserManager_view_profile'),
url(r'^search_celebrities/(?P<value>.*)/$', views.search_celebrity_sugggestion, name='UserManager_search_celebrity'),
url(r'^search_movies/(?P<value>.*)/$',views.show_suggestion_search_film,name='UserManager_search_movie'),
]

MovieManger应用程序的url为:

urlpatterns = [
url(r'^show/(?P<id>[0-9]+)/$', views.show_movie, name='MovieManager_show_movie'),
url(r'^show_awards/(?P<id>[0-9]+)/$', views.show_award_movie, name='MovieManager_show_awards'),
url(r'^show_top_100/$', views.get_100_best_movies, name='MovieManager_top_100'),
url(r'^sale_table/$',views.sale_table,name='MovieManager_sale_table'),
url(r'^search_festivals/$',views.search_festival_awards,name='MovieManager_search_festival'),
url(r'^all_crew/(?P<id>[0-9]+)/$', views.all_crew, name='MovieManager_all_crew'),
# url(r'^festival_awards/$',views.festival_awards,name='MovieManager_festival_awards'),

视图是:

def signup_page(request):
errors=""
if request.method == "POST":
    form = UserIMDBForms(request.POST)
    if form.is_valid():
        form.save()
    else:
        errors = ''
else:
    form = UserIMDBForms()
context = {'form':form}
return render(request, 'UserManager/signup.html', context)

模板为:

{% extends 'base/base.html' %}
{% load static %}
{% load checkType %}

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    {% block load_files %}
    <script src="{% static 'scripts/signup.js' %}" language="JavaScript"></script>
    <script src="{% static 'scripts/signup_birthday.js' %}" language="JavaScript"></script>
    <link href="{% static 'styleSheets/signup.css' %}" rel="stylesheet">
{% endblock %}
</head>
<body>
{% block content %}
    <form method="POST" action="" id="signup_form">
        {% csrf_token %}
        <div id="signup_topContent">
...
            {{ form.errors }}
    </form>
{% endblock %}
</body>
</html>

错误是:

Reverse for 'MovieManager_show_movie' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['movie/show/(?P<id>[0-9]+)/$']

有人能帮我吗?你知道吗


Tags: nameformidurlsearchhtmlshowmovie
1条回答
网友
1楼 · 发布于 2024-06-16 14:43:28

它在/user/signup/上失败,因为您试图打开此url,但网址.py无法解析其中一个应用程序(MovieManger应用程序)的。你知道吗

在某个地方你有这样的东西:

{% url 'MovieManager_show_movie' %}

这里缺少id

{% url 'MovieManager_show_movie' movie_id %}

相关问题 更多 >