Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django中获取NoReverseMatch错误_Python_Django - Fatal编程技术网

Python 在Django中获取NoReverseMatch错误

Python 在Django中获取NoReverseMatch错误,python,django,Python,Django,最奇怪的是,我只是从程序的工作部分复制了下面的代码,只是切换了名称,所有的基础都是一样的 错误: NoReverseMatch at /profile/1/ Reverse for 'follow_user_add' with arguments '(1,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['profile/follow/'] ulrs.py: url(r'^profile/', include('basi

最奇怪的是,我只是从程序的工作部分复制了下面的代码,只是切换了名称,所有的基础都是一样的

错误:

NoReverseMatch at /profile/1/
Reverse for 'follow_user_add' with arguments '(1,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['profile/follow/']
ulrs.py:

url(r'^profile/', include('basics.urls')),
basics/url.py:

url(r'^follow/', 'basics.views.add_user_follower', name='follow_user_add'),
url(r'^(?P<pk>\d+)/', UserDetailView.as_view(), name='users_detail'),

url(r'^', UserListView.as_view(), name='users_list'),
和模板:

<form action="{% url 'follow_user_add' user_object.id %}"  method="post">{% csrf_token %}
            <input type="submit" value="follow" />
            </form>
{%csrf\u令牌%}

我刚刚发现了你的错误,你这样给出了url

url(r'^follow/', 'basics.views.add_user_follower', name='follow_user_add'),
action="{% url 'follow_user_add' user_object.id %}"
def add_user_follower(request, pk ):
但在这样的模板中

url(r'^follow/', 'basics.views.add_user_follower', name='follow_user_add'),
action="{% url 'follow_user_add' user_object.id %}"
def add_user_follower(request, pk ):
所以上面的url是这样匹配的
/profile/follow/1/
。但是你的url
/profile/follow/

在这样的观点下,

url(r'^follow/', 'basics.views.add_user_follower', name='follow_user_add'),
action="{% url 'follow_user_add' user_object.id %}"
def add_user_follower(request, pk ):
你犯了这个错误

Reverse for 'follow_user_add' with arguments '(1,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['profile/follow/']
我的解决方案是你将url与pk匹配,但你没有这样的模式。所以你需要这样说

url(r'^follow/(?P<pk>\d+)/$', 'basics.views.add_user_follower', name='follow_user_add'),
url(r'^follow/(?P<pk>\d+)/$', 'basics.views.add_user_follower', name='follow_user_add'),
url(r'^(?P<pk>\d+)/$', UserDetailView.as_view(), name='users_detail'),

url(r'^$', UserListView.as_view(), name='users_list'),
url(r'^follow/(?P\d+)/$,“basics.views.add\u user\u follower”,name='follow\u user\u add'),
注意:您基本上错过了
(?p\d+)
模式。希望这对你有帮助

更新:以这种方式更改URL

url(r'^follow/(?P<pk>\d+)/$', 'basics.views.add_user_follower', name='follow_user_add'),
url(r'^follow/(?P<pk>\d+)/$', 'basics.views.add_user_follower', name='follow_user_add'),
url(r'^(?P<pk>\d+)/$', UserDetailView.as_view(), name='users_detail'),

url(r'^$', UserListView.as_view(), name='users_list'),
url(r'^follow/(?P\d+)/$,“basics.views.add\u user\u follower”,name='follow\u user\u add'),
url(r'^(?P\d+/$),UserDetailView.as_view(),name='users_detail'),
url(r'^$',UserListView.as_view(),name='users_list'),

谢谢您的评论!我更改了url,仍然出现错误:
找不到参数为“(“”,)”且关键字参数为“{}”的“follow_user_add”的反向。尝试了1种模式:[“profile/follow/(?P\\d+/$”]
@Harkonnen我更新了我的答案。请检查一下。@Harkonnen我在
['profile/follow/(?P\\d+/$')]
中找到了
\\d+
。您需要替换为
\d+
。这个``字,嗯。。我仍然在['profile/follow/(?P\\d+/$')和double\'中遇到错误,但在我的URL中它的r'^follow/(?P\d+/$)。也许这里有问题?action=“{%url”follow\u user\u add”user\u object.id%}”确定最后一次尝试
action=“{%url follow\u user\u add user\u object.id%}”