Django 404错误
我创建了两个URL,它们都指向同一个视图。一个产生404错误,另一个不产生 url.pyDjango 404错误,django,django-views,django-urls,Django,Django Views,Django Urls,我创建了两个URL,它们都指向同一个视图。一个产生404错误,另一个不产生 url.py from django.conf.urls import url from playerteamstats import views urlpatterns = [ # e.g. /stats url(r'^$', views.stats_index, name='index'), #Renders page # e.g. /stats/player url(r'^play
from django.conf.urls import url
from playerteamstats import views
urlpatterns = [
# e.g. /stats
url(r'^$', views.stats_index, name='index'), #Renders page
# e.g. /stats/player
url(r'^player/$', views.stats_index, name='player'), #Throws 404 error
]
from django.shortcuts import render
from django.shortcuts import render_to_response
from django.template import RequestContext
from playerteamstats.models import Player,Team
def stats_index(request):
return render_to_response('stats_index.html')
视图.py
from django.conf.urls import url
from playerteamstats import views
urlpatterns = [
# e.g. /stats
url(r'^$', views.stats_index, name='index'), #Renders page
# e.g. /stats/player
url(r'^player/$', views.stats_index, name='player'), #Throws 404 error
]
from django.shortcuts import render
from django.shortcuts import render_to_response
from django.template import RequestContext
from playerteamstats.models import Player,Team
def stats_index(request):
return render_to_response('stats_index.html')
url.py(根)
从django.conf.url导入模式,包括,url
从django.contrib导入管理
admin.autodiscover()
urlpatterns=模式(“”,
url(r“^fixtures/$”,包括('fixtures.url'),
url(r“^stats/$”,包括('playerteamstats.url'),
#用户公共配置文件
url(r'^(?P\w+/$,'fantasymatchday_1.views.public_profile'),
)
404错误
它似乎将/stats
与应用程序匹配得很好,但当我输入/stats/player
时,它会说它找不到公共用户名,就像它在根URL上查找一样。有人能帮忙吗?试试:
url(r'^player/$', views.stats_index, name='player'), #Renders page
# e.g. /stats/player
url(r'^$', views.stats_index, name='index''), #Throws 404 error
第二个url是通用的。Django按顺序处理URL。上面的代码只命中了第一个url。来自Django文档: urlpatterns变量的语法:- urlpatterns应该是Python列表,格式由函数django.conf.urls.patterns()返回。始终使用patterns()创建urlpatterns变量 所以试着这样做:
urlpatterns = patterns('',
url(r'^$', views.stats_index, name='index'),
url(r'^player/$', views.stats_index, name='player'),
)
这应该可以解决问题
请参阅:没有,结果仍然相同。