使用querystring将Django模板呈现为URL
我有几个标签的个人资料编辑页面。每个选项卡都是一个单独的页面,因此当我访问它时,我会添加“tab”参数:使用querystring将Django模板呈现为URL,django,Django,我有几个标签的个人资料编辑页面。每个选项卡都是一个单独的页面,因此当我访问它时,我会添加“tab”参数: /edit/?tab=general /edit/?tab=contacts 当用户完成在其中一个选项卡上填写表单时(例如,/edit/?tab=general),他将提交表单。如果表单无效,我需要用错误呈现它。浏览器URL输入需要填写/edit/?tab=general,但当我呈现页面时,URL是/edit/ 我能改变它吗?谢谢 代码: 听起来问题在于表单操作不包含查询字符串 通常,使
/edit/?tab=general
/edit/?tab=contacts
当用户完成在其中一个选项卡上填写表单时(例如,/edit/?tab=general
),他将提交表单。如果表单无效,我需要用错误呈现它。浏览器URL输入需要填写/edit/?tab=general
,但当我呈现页面时,URL是/edit/
我能改变它吗?谢谢
代码:
听起来问题在于表单操作不包含查询字符串 通常,使用Django表单和视图时,您将发布到与已发布的URL相同的URL,这意味着您可以执行以下操作:
<form method="post" action="?tab={{ current_tab }}">
...
</form>
...
其中,current_tab
是一个上下文变量,指示选择了哪个选项卡。根据目前的代码,您需要将其添加到render_模板调用中的dict中。如果使用JavaScript切换选项卡,则需要在选项卡切换时更新action属性
<form method="post" action="?tab={{ current_tab }}">
...
</form>