ruby-on-rails – 一张桌子 – 两个型号

我有模型板的层次结构(使用祖先gem实现).

我想要有两个模型,而不是一个模型和一些范围:根级别元素的板(祖先列值为nil)和其余的类别(祖先列值不是nil).他们会使用相同的桌面板.

我怎么能这样做?

解决方法

您可以使用set_table_name或self.table_name明确定义模型表,具体取决于您的rails版本.您还可以使用default_scope为每个针对此模型的查询定义认范围,因此两者的组合应该是您要搜索内容
class Category < AR:Base
  self.table_name = 'boards'
  default_scope where('boards.ancestry IS NOT NULL')
end

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...