【发布时间】:2010-08-05 13:47:02
【问题描述】:
我有一个神秘的问题......
在我的 routes.rb 中,我定义了一些路由,例如
resources :projects, :except => [:destroy] do
get :edit_flyer, :on => :member
get :guests, :on => :member
end
如果我运行 rake 路线,我会得到 p>
edit_flyer_project GET /projects/:id/edit_flyer(.:format) {:controller=>"projects", :action=>"edit_flyer"}
guests_project GET /projects/:id/guests(.:format) {:controller=>"projects", :action=>"guests"}
GET /projects(.:format) {:controller=>"projects", :action=>"index"}
projects POST /projects(.:format) {:controller=>"projects", :action=>"create"}
new_project GET /projects/new(.:format) {:controller=>"projects", :action=>"new"}
GET /projects/:id(.:format) {:controller=>"projects", :action=>"show"}
project PUT /projects/:id(.:format) {:controller=>"projects", :action=>"update"}
edit_project GET /projects/:id/edit(.:format) {:controller=>"projects", :action=>"edit"}
如您所见,显示操作已定义。 但在我的 rails 应用程序中,没有定义路线显示。
我将它添加到我的应用程序控制器中只是为了监控路由。
before_filter :zba
def zba
ActionController::Routing::Routes.named_routes.routes.each do |name, route|
puts "%20s: %s" % [name, route]
end
exit
end
而且似乎没有定义路由动作....
然后,我尝试清理我的 routes.rb,就像删除我所有的 back 命名空间一样,它神奇地起作用了。
这似乎是一个错误,或者我不知道发生了什么。
你知道如何调试吗?我还尝试删除插件/宝石。不用找了。
我使用带有 ruby 1.8.7 的 Rails3.rc 运行!
感谢您的帮助!
【问题讨论】:
-
我想我也有同样的问题...有没有运气解决它?
标签: ruby-on-rails routing ruby-on-rails-3