rails redirect_to post

时间:2012-09-08 00:41:34

标签: ruby-on-rails redirect

我在 The Rails 3 Way 一书中看到了一个例子

redirect_to post

由于post,这是否有一些特殊含义,或者它只是一个示例的不良选择,post只是一个域对象,它重定向到该对象的url

3 个答案:

答案 0 :(得分:7)

我需要查看完整答案的完整示例,但我的猜测是作者只选择了“Post”作为其中一个模型的名称而没有意识到它可能会导致读者混淆POST动作。

作为HTTP协议(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html)的一部分,您实际上无法重定向到POST操作。或者,更明确地说,使用重定向调用的任何目标都需要使用GET方法返回。

希望有所帮助!

答案 1 :(得分:1)

看看Rails Routing Guide然后应该清楚为什么那样。

此外,如果您想查看应用程序的路径:

cd path/to/your/app
rake routes

这将列出您应用中可用的路线。

答案 2 :(得分:0)

你需要一个Post资源和config / routes.rb中的相应路由

只需执行“rails g resource post title:string content:text”,例如生成一个。 “redirect_to post”中的路由是动态处理的。 Post“post”的实例作为参数传递给redirect_to方法,导致页面重定向到帖子#show action并传递Post实例的id。这是“铁轨魔术”