我从登录页面渲染到管理员索引页面,但是网址没有改变,如何更改呢?
代码如下:
return render(request, 'app_admin/index.html')
作为一个常识,我们都知道使用渲染url地址不会改变,但我希望它改变。我怎样才能做到这一点?我不想使用重定向,因为我将在渲染中传递数据。我怎么能这样做?
答案 0 :(得分:1)
渲染无法更改URL。 Django使用模型 - 视图 - 控制器模式,视图与URL无关。要实现您想要的功能,您必须先重定向用户,然后在该路径上进行渲染。
我看到您网页上的网址为/login
,因此我认为当您尝试将用户登录时会出现此问题。如果您重复使用此方法(在接收提交表单时呈现),您将很快遇到问题或以后。例如,尝试刷新当前显示的页面,我认为浏览器会要求您重新提交表单。
您说您不想重定向,因为您在渲染中传递数据。这也是一种容易出错的方法。使用Cookie和会话在页面之间一致地存储信息。当用户导航管理面板时,您如何存储登录详细信息?
你问的是不可能的。 render
功能(与朋友一起)无法更改网址。
答案 1 :(得分:0)
如果要在浏览器URL中显示,则必须绑定单独的url
为了这
添加index.hmtl
的网址并为其指定view
在行动电话上只是url
您指定的内容