验证 'has_one' 关系中子模型的存在

Validate existence of submodel in 'has_one' relation

我有两个模型,一个Post和一个Genre。我正在用给定的 genre_id 创建新的 post。验证具有给定 id 的流派是否存在的最佳方法是什么?现在我正在验证 genre_id 的存在,但这还不够。

validates :genre_id, presence: true

我知道我可以检查该类型是否存在于控制器中,但我更愿意将其包含在我的 post 验证器对象中。

您可以明确告诉 Rails 验证 genre 关联而不仅仅是属性,genre_id 具有:

has_one :genre 
validates_presence_of :genre

validates_presence_of