我一直在玩多表继承和数据库约束。我知道 Rails 的理念是处理代码中的约束而不是数据库中的约束,但我想两者都做。我也知道多态关联,但它们不会让你强制执行约束。
所以这是我的场景,而不是在guidesimageable_type
中拥有and ,我想拥有and (在我的情况下,我将只有两个外键)。这让我可以像这里解释的那样创建一个约束。imageable_id
employee_id
product_id
但是现在,我有一个问题,我需要创建一个条件关系,而 rails 似乎没有为此提供任何东西。我需要一个imageable
与产品或员工相关的关系,具体取决于填写的字段。
任何建议如何在 Rails 中做到这一点?我知道如何在 SQL 中进行约束,我的问题实际上是如何在 Rails 中实现这种多态关系。
再一次,我知道如何在没有数据库约束的情况下做到这一点,但数据库约束是我问题的重点:)