比如我要编辑 User 的资料,当前页面是 /users?page=10
/users?page=10
我编辑当前页的一个用户,跳转到 /users/10/edit,
/users/10/edit
编辑完成后,怎么跳转回 /users?page=10 ?
rails 有没有最佳实践的方法?
我目前想到的是在每个编辑表单里加 hidden_field_tag,但这样感觉过于麻烦,想问问有没有更方便优雅的方法。
没找到什么好办法,目前是通过 session 保存 referrer 来实现。
# application_controller before_action do session[:return_to] = request.referrer end # action def update #... redirect_to (session[:return_to] || other_path) end
大致思路这样,实际使用还要其他额外处理
比我的办法好,谢谢回复,跳转前,取出 session 中的地址,然后清空 session 的地址
感觉 hidden_field_tag 没什么问题,没有必要使用 session 和 cookie
用 hidden field 麻烦的话可以使用 cookie,不是什么敏感数据,没有必要使用 session
可以参考这个文章 When should I use cookies and when should I use sessions https://www.quora.com/When-should-I-use-cookies-and-when-should-I-use-sessions
如果用户资料数据不多,页面不大,编辑不跳转页面,通过弹窗异步实现感觉操作更方便点。