在from_remote_tag中如果要做页面的redirect,直接写入redirect_to :action => 'edit' 这样的代码是无效的
根本不会产生任何的页面跳转。
google下来的结果是要这样写code
[code]
render :update do |page|
page.redirect_to :action => 'edit'
end
[/code]
这里的redirect比平时调用的代码多了page对象
这个page对象似乎都是各种javascript代码。
估计上面的代码和这个是等同的
[code]
render(:text => " window.location.href = 'http://0.0.0.0:3000/mydata/edit';<http://0.0.0.0:3000/mydata/edit;>")[/code]
仅仅是产生一段javascript的代码,然后call。
看了下page对象的代码,还真的是这样
[code]
def redirect_to(location)
assign 'window.location.href', @context.url_for(location)
end[/code]
这个方法虽然能够实现功能,但是居然是客户端跳转,虽然对html和javascript不是很熟悉,不过映象中很多都是服务器端跳转的。为什么这里一定要做客户端跳转?
根本不会产生任何的页面跳转。
google下来的结果是要这样写code
[code]
render :update do |page|
page.redirect_to :action => 'edit'
end
[/code]
这里的redirect比平时调用的代码多了page对象
这个page对象似乎都是各种javascript代码。
估计上面的代码和这个是等同的
[code]
render(:text => " window.location.href = 'http://0.0.0.0:3000/mydata/edit';<http://0.0.0.0:3000/mydata/edit;>")[/code]
仅仅是产生一段javascript的代码,然后call。
看了下page对象的代码,还真的是这样
[code]
def redirect_to(location)
assign 'window.location.href', @context.url_for(location)
end[/code]
这个方法虽然能够实现功能,但是居然是客户端跳转,虽然对html和javascript不是很熟悉,不过映象中很多都是服务器端跳转的。为什么这里一定要做客户端跳转?
本文探讨了Rails应用中从from_remote_tag进行页面重定向的方法。详细解释了一种有效的重定向方式,即通过page对象来实现,并提供了具体的代码示例。同时对比了服务器端与客户端跳转的区别。

被折叠的 条评论
为什么被折叠?



