Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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模板:如何将显示对象的PK/ID从模板传递回Views.py文件?_Python_Html_Django_Django Views - Fatal编程技术网

Python Django模板:如何将显示对象的PK/ID从模板传递回Views.py文件?

Python Django模板:如何将显示对象的PK/ID从模板传递回Views.py文件?,python,html,django,django-views,Python,Html,Django,Django Views,我想在每个用户的页面上创建一个基本的评论和发布系统。在Views.py中,我将用户页面上所有帖子的查询集称为“postset”。然后在模板中,我循环遍历整个查询集,提取postcontent、postdate以及postset查询集中每个帖子的pk/ID。然后在每个帖子下,我还显示了用于输入评论的表单。我的问题是,我想以某种方式将用户在commentform中填写的相应帖子的{postset.pk}变量传递到views.py文件,以便将输入的评论存储在它所属的正确帖子下。我该怎么做?具体来说,我

我想在每个用户的页面上创建一个基本的评论和发布系统。在Views.py中,我将用户页面上所有帖子的查询集称为“postset”。然后在模板中,我循环遍历整个查询集,提取postcontent、postdate以及postset查询集中每个帖子的pk/ID。然后在每个帖子下,我还显示了用于输入评论的表单。我的问题是,我想以某种方式将用户在commentform中填写的相应帖子的{postset.pk}变量传递到views.py文件,以便将输入的评论存储在它所属的正确帖子下。我该怎么做?具体来说,我如何让django理解每个commentform所在的帖子是输入的评论应该通过ForeignKey附加到的帖子

提前感谢您的帮助。这件事让我很难受。非常感谢

<ul>
{% for postset in postset %}
    <br>{{ postset.postcontent }} {{ postset.postdate }} {{ postset.pk }}  
</br>
<form action="/myapp/{{url_paramforURL}}/" method="post">
    {% csrf_token %}
    {{ commentform.commentcontent }} 
    <input type="submit" value="Comment" /> 
    <ul>
{% for comment in postset.postcomment_set.all %}
    <br> {{ comment.comment }} {{comment.postcommentdate }}
 {% endfor %}</ul>
 {% endfor %}
</ul>
    {postset%中的postset%为%0}
    {{postset.postcontent}{{postset.postdate}{{postset.pk}
    {%csrf_令牌%} {{commentform.commentcontent}
      {%用于postset.postcomment\u set.all%中的注释}
      {{comment.comment}}{{comment.postcommentdate}} {%endfor%}
    {%endfor%}

与任何数据一样,您可以通过URL或表单传递数据

例如,您可以设计注释表单发布到的URL,使其包含postset ID,例如:
/myapp/post///add\u comment/
。然后,只需在模板中的
{%url%}
标记中传递这些值,并在视图中使用它们

或者,尽管我不太喜欢这个解决方案,但您可以简单地添加一个包含postset ID的隐藏输入:

<input type="hidden" name="postset_id" value="{{ postset.id }}">


并从
请求中获取它。在视图中发布

多谢各位。这太棒了,正是我所需要的。这很有道理,但我只有一个问题。如果我想使用第二种方法,我应该如何在my views.py中调用输入值?在views.py中调用它的最佳方式是什么?它将在
request.POST['postset\u id']
中调用。明白了。现在效果很好。我真的很感谢你的帮助。