首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails 5对不同的表使用belongs_to和条件

Rails 5对不同的表使用belongs_to和条件
EN

Stack Overflow用户
提问于 2021-09-12 21:31:27
回答 1查看 68关注 0票数 0

我正在开发一个rails应用程序,使用不同的表和关联,并试图找出最佳的解决方案,目前还不知道。

一个表/类称为类别。

例如

代码语言:javascript
复制
Categories
  - Stocks
  - Reits
  -(...)

每个类别一张表

代码语言:javascript
复制
Stocks
  belongs_to :category
代码语言:javascript
复制
Reits
  belongs_to :category

我不想创建一个名为“股息”的表,其中包含一个条件,不知道是否可行,例如:

代码语言:javascript
复制
Dividends

  belongs_to :category

  if category_id == 1
    belongs_to :stock
  end

  if category_id == 2
    belongs_to :reit
  end

有命令:

代码语言:javascript
复制
rails g scaffold dividends category:references stock:references reit:references

但我不知道这是否会让人感到困惑,例如,如果可能更好地为每个类创建一个表:

代码语言:javascript
复制
StocksDividends
 belongs_to :category
 belongs_to :stock

ReitsDividends
 belongs_to :category
 belongs_to :reit

希望能在考虑这个解决方案方面有所帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-12 21:38:02

只是一个简单的提示--看看多态关联:https://guides.rubyonrails.org/association_basics.html#polymorphic-associations

它的机制是将一个外键与一个type列一起放在股息表中。type列告诉您什么类型的记录是父记录-- stock还是reit

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69155347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档