在rails中渲染和重定向

时间:2014-12-03 06:50:33

标签: ruby-on-rails ruby render

我刚刚回答了一个关于测验的问题,问题如下:

以下哪项是关于render和redirect_to的无效声明?

  • render不会发送新请求,redirect_to会发送
  • redirect_to不会发送新请求,render会发送
  • render不会导致当前操作停止执行
  • redirect_to不会导致当前操作停止执行

我选择了选项1作为我的答案,但结果却是错误的。我在线查看了link,其中明确指出redirect_to向浏览器发送了新请求:

  
    

render和redirect_to之间有一个重要的区别:render会告诉Rails它应该使用哪个视图(你可能已经发送了相同的参数)但是redirect_to会向浏览器发送一个新的请求。

  

2 个答案:

答案 0 :(得分:3)

选项二将是正确的答案,如有问题清楚写明:以下哪项是无效声明

根据您的理解并了解redirect_to发送新请求,但在选项中它表示不发送,因此它变为无效声明,您的答案应为

redirect_to doesn't send a new request but render does

注意:

Kindly read question properly and understand it first before give the answer..

答案 1 :(得分:0)

我猜您错过了问题中的invalid字词,正确答案将是选项4

redirect_to will not cause the current action to stop executing

选项1 render doesn't send a new request but redirect_to does有效,因为redirect_to会向get类型的操作发送获取请求,但render只会呈现view,与其他action

无关