ruby-on-rails - 更改路由行为但保留 "Convention over Configuration"

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

我正在使用 Ruby on Rails 3.0.7,在我的应用程序中我有一个 Users::Article类(注意它是命名空间的)。在routes.rb文件说明如下:

resources :users do
  resources :articles
end

我想设置与Users::Article相关的路由类,以便我可以通过 URL /articles 访问它, /articles/new , /articles/1/articles/1/edit但我仍想使用 RoR Convention over Configuration“系统”。也就是说,我想使用:

  • Users::ArticlesHelper ;
  • views/users/articles/<file_name>.html.erb查看文件;
  • 命名路由(<name>_path<name>_url);
  • 和其他“类似 Ruby on Rails 的方式”...

我该怎么做?


简而言之,例如,我想引用 /articles/1路径,但使应用程序完全按照考虑 users/<user_id>/articles/1 的方式工作路径。

最佳答案

这不是审美问题,而是与路由参数有关。

您可以使用/articles/:id 然后在 Controller 中引用所有者(用户)。

在第二种情况下,/users/:user_id/articles/:id 将传递 2 个参数给 Controller 。

关于ruby-on-rails - 更改路由行为但保留 "Convention over Configuration",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6515395/

相关文章:

ruby-on-rails - 为什么 ruby​​ REGEX\A...\z 允许在开始时输入任何内容?

mysql - mysql查询中的复杂搜索问题

ruby-on-rails - 如何在 Rails 3.x 中提取多个属性?

ruby-on-rails - Elasticsearch返回的结果少于SQL?

Ruby 合并 n 个哈希元素并取中间键

javascript - Rails 3.2.13 - 没有路线匹配 [GET] "/js/jquery.fancybox.js"

mysql - 在没有 Xcode 的情况下使用 Rails 安装 MySQL

sql - 如何拨驼峰柱

ruby-on-rails - 如何使用 nokogiri 和 mechanize 从 &lt;script&gt; 标签中提取文本?

ruby-on-rails - 有没有一种不太尴尬的方法来在 Ruby 哈希中存储值?