繁体   English   中英

Rails属于多个属性中的同一模型

[英]Rails belongs_to same model in multiple attributes

有一个称为Student的模型,并具有一个名为:studies_level的属性。

studies_level可以具有以下值之一: ['school_graduate', 'undergraduate', 'graduate', 'postgraduate', 'doctoral', 'postdoctoral']

还有另一种模式叫做University

如果:studies_level是研究生则学生必须填写以下属性:undergraduate_university:postgraduate_university用University_id

有什么办法可以通过Rails模型关系(longs_to等)来实现?

belongs_to :undergraduate_university, class_name: :University
belongs_to :postgraduate_university, class_name: :University
validates  :undergraduate_university, presence: true, if: :studies_level=='postgrad'
validates  :postgraduate_university, presence: true, if: :studies_level=='postgrad'
validates_associated  :undergraduate_university
validates_associated  :postgraduate_university

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM