如何将参数从我的表单操作传递到视图?姜戈
Posted
技术标签:
【中文标题】如何将参数从我的表单操作传递到视图?姜戈【英文标题】:How to pass parameters from my form action to a view? Django 【发布时间】:2017-12-13 10:42:41 【问题描述】:这是我的视图函数:它需要一个 kwarg,即 block_id
def write_comment(request, block_id):
block=get_object_or_404(Block, pk=block_id)
if request.method=='POST':
form=Comment_form(request.POST)
if form.is_valid():
#do stuff
else:
return render(request,'writers_block/index.html', 'comment_form':form, 'block_form':Block_form())
要从我使用的模板表单中访问它:
%for block in block_list%
<form method="post" action="%url 'write_comment' block_id=block.id%">
%csrf_token%
comment_form
<input type="submit" value="submit">
</form>
%endfor%
不知何故,我总是收到一个 NoReverseMatch,说找不到带有该参数的 write_comment:
url模式是:
url(r'^write_comment', writers_block.views.write_comment, name='write_comment')
你能帮帮我吗?
【问题讨论】:
【参考方案1】:你能像这样更改你的网址并尝试..
url(r'^write_comment/(?P<block_id>\d+)/$', writers_block.views.write_comment, name='write_comment')
【讨论】:
引号不应该涵盖整个正则表达式吗?像 (r'^write_comment/(?P以上是关于如何将参数从我的表单操作传递到视图?姜戈的主要内容,如果未能解决你的问题,请参考以下文章