如果型号与控制器命名不匹配怎么办?

时间:2011-02-24 05:01:16

标签: ruby-on-rails

说我有这个设置:

我的模型是'内容',我想在2个控制器中使用这个模型。

blog_controller.rb article_controller.rb

我的'内容'模型有一个属性'content_type',告诉我这个内容是“博客”还是“文章”。

这似乎阻止我做:

资源:文章 资源:博客

正确?既然型号不同?或者我还能这样做吗?

2 个答案:

答案 0 :(得分:1)

你仍然可以做到。

在您的路径文件中,默认情况下,resources方法会查找您传递它的同名控制器。因此,无论模型的名称是什么,如果您有一个名为blog_controller的控制器,您都可以resources :blog

答案 1 :(得分:1)

以经典的SO方式,而不是回答你的问题,我会批评你的实施;-)

我认为问题的根源在于您需要一个内容表,文章和博客之间共享代码。在rails中,这样做的方式称为“Single Table Inheritance”。