如果我有多态belongs_to
,我该如何为每个可能的关联添加名称/属性?
假设Task
taskable
user
和project
@task.project
,我可以通过简单的方式创建@task.user
和nil
{1}}?
其中一个会返回关联,另一个会返回{{1}} ..
答案 0 :(得分:0)
首先 - 这是个坏主意。 你已经选择了多态,为什么你需要这样的东西? @ project.task / @ user.task应该就够了。
但是,如果像这样的黑客解决方案就足够了:
def comment
attachable if attachable_type.eql?("Comment")
end