Python view.py的问题
我收到以下错误:Python view.py的问题,python,django,django-views,Python,Django,Django Views,我收到以下错误:view\u page()正好接受2个参数(给定1个) view.py的代码是: from wiki.models import Page from django.shortcuts import render_to_response def view_page(request, page_name): try: page = Page.objects.get(pk=page_name) except PageDoesNotExist:
view\u page()正好接受2个参数(给定1个)
view.py的代码是:
from wiki.models import Page
from django.shortcuts import render_to_response
def view_page(request, page_name):
try:
page = Page.objects.get(pk=page_name)
except PageDoesNotExist:
return render_to_response("create.html", {"page_name":page_name})
url.py中给出的url为:
url(r'^wiki/$', 'wiki.views.view_page'),
但是当我给出下面给出的url并删除上面的url时,我得到的错误是页面未找到
url(r'^wiki/(?P<page_name>[^/]+)/$','wiki.views.view_page'),
url(r'^wiki/(?P[^/]+)/$,'wiki.views.view_page'),
我认为您的查询集是错误的。如果您在URL中传递页面名称,那么它应该如下所示:
Page.objects.get(name=page_name)
也许第二个参数应该是可选的
def view_page(request, page_name="Default value"):
这是因为view_page()的第二个参数是在url中传递的 范例
url(r'^wiki/(?P<page_name>[^/]+)/$','wiki.views.view_page')
something.com/wiki/2 #here 2 is the second parameter which is like
def view_page(request, 2)
因为您只传递了一个参数,而您的view_page()接受两个参数显示您正在从那里调用此url,您是否传递了页码,但当我将我的url修改为
url(r'^wiki/(\d+),'wiki.views.view_page'),
时,出现错误,页面未找到
url(r'^wiki/$', 'wiki.views.view_page'),
something.com/wiki/ #The second parameter is not passed to the function