我有可能处于不同状态的提交,并编写了一个 method_missing 覆盖,允许我通过如下调用检查它们的状态
submission.draft?
submission.published?
这非常有效。
由于各种可能不太好的原因,我也有一个模型Packlet
,称为belongs_to a meeting和belongs_to a submission。然而,我惊讶地发现
packlet.submission.draft?
返回一个NoMethodError
。另一方面,如果我将#draft?
方法硬编码到Submission
中,则上述方法调用有效。
即使实例是通过 ActiveRecord 关联定义的,如何让我的 method_missing 方法被识别?