Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.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没有反向匹配/_Python_Django - Fatal编程技术网

Python Django没有反向匹配/

Python Django没有反向匹配/,python,django,Python,Django,我试图把一张图片做成图片所代表的帖子的url,我一定是做错了什么,但我不知道是什么 当我试图访问我的网站主页时,我遇到了这个错误 模板呈现期间出错 在template…/home.html中,第48行出现错误 找不到具有关键字参数“{'post\u id':''}”的“view\u post”的反转。尝试了1个模式:[“post/(?P[0-9]+)/$”] 以及它所展示的代码 <a href="{% url 'view_post' post_id=post.post_id %}">

我试图把一张图片做成图片所代表的帖子的url,我一定是做错了什么,但我不知道是什么

当我试图访问我的网站主页时,我遇到了这个错误

模板呈现期间出错

在template…/home.html中,第48行出现错误

找不到具有关键字参数“{'post\u id':''}”的“view\u post”的反转。尝试了1个模式:[“post/(?P[0-9]+)/$”]

以及它所展示的代码

<a href="{% url 'view_post' post_id=post.post_id %}"><img src="media/{{ item.image }}"></a>
和url

url(r'^post/(?P<post_id>[0-9]+)/$', views.view_post, name='view_post'),
url(r'^post/(?P[0-9]+)/$),views.view\u post,name='view\u post'),

谢谢您的帮助。

我根据您的代码示例做了一些假设。这一行:

post = get_object_or_404(Post,id=post_id)
表示类
Post
具有属性
id
。但是,在模板中,可以调用
post.post\u id
。假设
post
是类
post
的对象实例,它应该具有属性
id
。类
post
中可能没有类似于
post\u id
的属性

这意味着在模板
post.post\u id
中不会返回输出。此处未显示的URL应为整数
['post/(?P[0-9]+)/$']
。因此抛出错误

请尝试以下代码段:

{% url 'view_post' post_id=post.id %}
看看会发生什么


正如我所说,这是基于一些假设,我不能保证成功。

我根据您的代码示例做出一些假设。这一行:

post = get_object_or_404(Post,id=post_id)
表示类
Post
具有属性
id
。但是,在模板中,可以调用
post.post\u id
。假设
post
是类
post
的对象实例,它应该具有属性
id
。类
post
中可能没有类似于
post\u id
的属性

这意味着在模板
post.post\u id
中不会返回输出。此处未显示的URL应为整数
['post/(?P[0-9]+)/$']
。因此抛出错误

请尝试以下代码段:

{% url 'view_post' post_id=post.id %}
看看会发生什么


正如我所说,这是基于一些假设,我不能保证成功。

结果证明我只是愚蠢,让自己很难做到。问题是我做了
,结果证明我只是个傻瓜,让自己很难做到。问题是我已经做了
post.post\u id的值是多少?在模板
{{post.post\u id}}
中的某处尝试并检查输出。正如我所看到的,
post\u id
值是空字符串(从错误行-
{'post\u id':''}
),但模式仅与非空数字
[0-9]+
post.post\u id
的值是什么?在模板中的某个地方尝试
{{post.post\u id}
并检查输出。正如我所看到的那样,您的
post\u id
值是空字符串(从错误行-
{'post\u id':''}
),但模式仅与非空数字匹配
[0-9]+
嘿,谢谢您的回答。关于post_id不是post的属性,您是对的,在模板中选中了{{post.id},它确实有一个整数值,但是在更改为{%url'view_post'post_id=post.id%}之后,我仍然会得到相同的错误。@zmksa如果答案对您的问题有解决方案,请您接受它。嘿,谢谢您的答案。关于post_id不是post的属性,您是对的,在模板中选中了{{post.id},它确实有一个整数值,但是在更改为{%url'view_post'post_id=post.id%}后,我仍然会得到相同的错误。@zmksa如果答案对您的问题有解决方案,你能接受吗。你的问题现在完全解决了吗?是的,一旦我把post.id添加到主页上,一切都按计划进行,我可以继续。谢谢你的帮助。如果我的答案没有完全解决问题,而你找到了如上所述的解决方案,请你扩展你的答案,以便对其他人也有帮助。然后你可以接受自己的答案。你的问题现在完全解决了吗?是的,一旦我将post.id添加到主页,一切都按计划进行,我可以继续。谢谢你的帮助。如果我的答案没有完全解决问题,而你找到了如上所述的解决方案,请你扩展你的答案,以便对其他人也有帮助。然后你可以接受自己的答案。