gpt4 book ai didi

python - URLconf 不适用于类似的 URL

转载 作者:行者123 更新时间:2023-12-01 06:02:20 24 4
gpt4 key购买 nike

这是我的 URLconf:

urlpatterns = patterns('',
url(r'^new_player/$', new_player, name="new_player"),
url(r'^new_player/player_added/$', player_added, name="player_added"),
url(r'^(\d+)/new_avatar/$', new_avatar, name='new_avatar' ),
url(r'^(?P<user_name>[-\w]+)/new_game/$', new_game, name='new_game' ),
url(r'^$', 'django.views.generic.list_detail.object_list', { 'queryset': Player.objects.all(),'extra_context': {'players' : Player.objects.annotate(total_amount_won=Sum('avatar__games__profit'))}}, 'stakeme_player_list'),
url(r'^(?P<real_name>[\w|\W]+)/', usernames_by_player),
url(r'^(?P<user_name>[\w|\W]+)/', avatars_by_username),
)

如上所述,url(r'^(?P<real_name>[\w|\W]+)/', usernames_by_player),将显示其关联的模板,但是 url(r'^(?P<user_name>[\w|\W]+)/', avatars_by_username),将 404。

如果我颠倒最后两个 URL 的顺序,则 usernames_by_player 将显示 404而不是avatars_by_username

我可以看到,由于相似的 URL 模式,这可能会导致问题,但有人可以解释一下原因以及如何解决吗?

最佳答案

这些 URL 会按照您定义的顺序进行查找。所以这一行 url(r'^(?P<real_name>[\w|\W]+)/', usernames_by_player)获取请求 url 中的所有输入。您应该区分这些网址,例如:

url(r'^realname/(?P<real_name>[\w|\W]+)/', usernames_by_player),
url(r'^username/(?P<user_name>[\w|\W]+)/', avatars_by_username),

希望这能引导我们走向正确的方向。

关于python - URLconf 不适用于类似的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9730442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com