渲染模板,我想要更改URL地址

时间:2017-09-13 07:15:56

标签: python django

我从登录页面渲染到管理员索引页面,但是网址没有改变,如何更改呢?

enter image description here

代码如下:

return render(request, 'app_admin/index.html')

作为一个常识,我们都知道使用渲染url地址不会改变,但我希望它改变。我怎样才能做到这一点?我不想使用重定向,因为我将在渲染中传递数据。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

渲染无法更改URL。 Django使用模型 - 视图 - 控制器模式,视图与URL无关。要实现您想要的功能,您必须先重定向用户,然后在该路径上进行渲染。

我看到您网页上的网址为/login,因此我认为当您尝试将用户登录时会出现此问题。如果您重复使用此方法(在接收提交表单时呈现),您将很快遇到问题或以后。例如,尝试刷新当前显示的页面,我认为浏览器会要求您重新提交表单。

您说您不想重定向,因为您在渲染中传递数据。这也是一种容易出错的方法。使用Cookie和会话在页面之间一致地存储信息。当用户导航管理面板时,您如何存储登录详细信息?

你问的是不可能的。 render功能(与朋友一起)无法更改网址。

答案 1 :(得分:0)

如果要在浏览器URL中显示,则必须绑定单独的url 为了这 添加index.hmtl的网址并为其指定view 在行动电话上只是url您指定的内容