我想更改网址上的:id
参数。我在routes.rb文件中添加了类似的内容:
match "articles/:name/edit", :to => 'articles#edit', :as => 'edit_article'
认为:name
服务器将params[:name]
作为def edit
@article = Article.find(params[:name])
end
后来为我在rails中。我编辑了我的文章控制器定义以进行编辑:
couldn't find article with id=test
我总是得到错误{{1}},我想知道为什么“id”而不是:name?我也试过改变比赛,但我得到了同样的结果。
我还有默认资源:文章仍在我的routes.rb文件中,不知道是否有类似双重规则的工作。
整个问题是,我会在网址中使用名称而不是ID编号,而不仅仅是编辑编号,使用show方法我可以处理它,但不能使用编辑/更新/删除。
关于路由我是reading但是我无法弄清楚我做错了什么。