我使用django创建了一个项目,当我搜索这个网址时出现错误:
http://localhost:8000/user/signup/
项目的网址是:
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应用的网址是:
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应用的网址是:
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]+)/$']
任何人都可以帮助我吗?
答案 0 :(得分:2)
它在/user/signup/
失败,因为您尝试打开此网址,但您的某个应用(MovieManger应用)的urls.py无法解析。
某处你有这样的事情:
{% url 'MovieManager_show_movie' %}
这里缺少id
{% url 'MovieManager_show_movie' movie_id %}