0

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

我正在尝试通过 url "/submit" 创建一条到 :submissions#new 的路由

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

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

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

这是错误消息:

ActionController::RoutingError 在提交#new

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

没有路线匹配 {:controller=>"submissions"}

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

4

1 回答 1

1

试试这个方法:

resources :submissions, :except => [:new]
match 'submit', :to => 'submissions#new', :as => :submit
于 2011-05-16T13:11:57.813 回答