我从来没有接触 routes.rb 超过呼叫 map.root 设置一个默认的路线。我一直内容,使用网址的形式...

/controller/action/perhaps_an_id

和它工作正常。

这不会使我成为一个坏人吗?我漏了一些东西完全真棒?

如果我尝试通过宁静的设计?这意味着我必须要编辑 routes.rb 或者我可以继续以惊喜忽略?

(我试着读了关于该主题的在轨的方式,但它是无法忍受的。)

有帮助吗?

解决方案

如果你产生资源,与默认脚手架然后它将甚至包括安宁的路由你在路线。rb。

如果你不使用脚手架,那么原因,它的工作是因为默认的路线底部通过默认:

    map.connect ':controller/:action/:id'
    map.connect ':controller/:action/:id.:format'

我已经下,这是最好的做法,以删除这些用于生产应用程序,而不是确保仅有的资源,需要暴露暴露出来。与轨2.2你甚至可以限的宁静的方法从地图。资源:

map.resources :posts, :only => [:index, :show]
map.resources :comments, :except => [:edit]

还有的事情可以做嵌套的资源,名为路线,等等。他们有很多实例在文档(http://www.railsbrain.com/api/rails-2.2.2/doc/index.html?a=M000255&name=resources)

其他提示

您可能还想为您的营销部门制作自定义命名路线(例如:mycoolsite.com/free-trial),这些路线适用于特定的控制器和操作等。

Ryan Bates有一系列的截屏视频,介绍了一些你可以用路线做的好事: http: //railscasts.com/tags/14

没有切换到RESTful设计并不会让你成为一个坏人,如果你觉得没有必要改变,那就继续以1.x的方式编写应用程序。

大多数Rails开发人员都采用了REST,似乎对它非常满意。我认为这里不需要重复所有专业的REST参数。

您需要为路径文件添加一行资源,例如:

map.resources :posts

如果您要使用RESTful,是的,您必须编辑routes.rb并添加资源,例如,

map.resources :your_resource

或者如果您有嵌套资源,

    map.resources :people do |person|
      person.resources :ideas do |idea|
        ideas.resources :bad_ones
      end
    end
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top