我在两个模型之间有一个简单的 has_one/belongs_to 关系。
这是我的应用程序中的新关联,因此有许多记录尚未创建关联记录。
在我的整个应用程序中,我假设模型具有关联并且我正在访问它的属性和方法。但是,由于关联不存在,我遇到了很多错误。
我想做的是在第一次通过它的任何方法和属性访问它时,不引人注意地即时构建关联记录。记录中是否有数据并不重要,我只需要它存在,以便我调用的那些方法可以构建数据。
编辑:我不想在我尝试访问关系的所有实例上检查和创建记录,因此理想情况下,这需要在模型本身上完成,而不是在我的 Controller 中的任何地方。
有什么想法吗?
谢谢!
最佳答案
这就是我们最终的成功之处。它不是我写的(一位同事写的),但它通过了我之前为这个案例编写的失败测试。
def stats_with_create
stats_without_create || create_stats
end
alias_method_chain :stats, :create
关于ruby-on-rails - 尝试访问时不引人注意地为关联创建记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/889477/