Rails 3路由帮助

时间:2011-05-16 03:02:10

标签: ruby-on-rails-3 rails-routing

这可能很简单,但我无法弄清楚。

我正在尝试创建一条路线:通过网址提交#new“/ submit”

resources :submissions, :only => [:index, :show, :new, :create]
match 'submit', :to => 'submissions#new'

上面的代码工作正常,但我想阻止标准的“资源”创建的URL “/ submissions / new”并且只使用“/ submit”URL。我将它写成两个URL的方式将呈现提交#new,这是我不想要的。

当我注释掉“资源”代码行并且只使用“匹配”行时,它再也找不到控制器“submissions_controller”

以下是错误消息:

提交#new

中的ActionController :: RoutingError

显示/media/sf_admin/Projects/lolsnort/app/views/submissions/_form.html.erb,其中第1行被提出:

没有路线匹配{:controller =>“提交”}

任何帮助将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

试试这个:

resources :submissions, :except => [:new]
match 'submit', :to => 'submissions#new', :as => :submit