`

Rails中render和redirect_to页面显示的用法

 
阅读更多
        今天写代码的时候遇到页面跳转的问题,所以查了render 和redirect_to的异同及用法,render 和redirect_to 都是执行页面跳转,并且写在这两个方法后面的语句仍然会被执行。
1.render:简单的页面渲染,可以指定渲染的页面或布局文件,但是不会发出请求,只根据函数参数渲染页面,不会执行action函数,不会重新加载服务器中的数据。render的用法如下:
(1)直接渲染出文本:
render(:text => string) 

(2)直接调用某个action的模板,action_name方法在当前controller里:
render(:action => action_name) 

(3)调用某个action的模板,action_name方法不在当前controller里:
render :action => action_name,:controller=>'.......' 

(4)使用某个模板文件render, 当use_full_path参数为true时可以传入相对路径
render(:file => path, [:use_full_path => true|false]) 

(5)默认的的render, 相当于render(:action => self)
render()   

2.redirect_to:发送请求重定向页面,可以指定controller和action,会执行对应的action方法的跳转,重新加载服务器数据,不保留页面中原有的数据。redirect_to的用法如下:
redirect_to :action => 'edit', :id => 7
redirect_to "http://dachuan212.iteye.com/"
redirect_to "/images/1.jpg" 
redirect_to :back

上述第4行是回到上一次访问的页面
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics