ruby-on-rails - 尝试访问时不引人注意地为关联创建记录?

标签 ruby-on-rails ruby model-view-controller unobtrusive

我在两个模型之间有一个简单的 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/

相关文章:

ruby-on-rails - 一个存储文件的地方(Ruby on Rails)

ios - Objective-C : Turning off music after switching views

javascript - Angular Controller 不控制台记录数据。然而,Service 正在传递数据。

ruby-on-rails - 事件存储 : NoMethodError (undefined method `[]' for nil:NilClass)

ruby-on-rails - 安装 Rails 3 后如何使用 Rails 2.3 应用程序生成器?

ruby-on-rails - Rails - datetime_select - 更改时间和日期的顺序

php - 从 Ruby 或 PHP 或 Cocoa 访问 Mac 应用程序

ruby-on-rails - 在通过自定义初始值设定项编写的 config 目录中的自定义 yml.erb 文件中使用 image_path 帮助程序

ruby-on-rails - rails : how to validate an object field's value before save?

c# - 将 MVC 列表分成多个 div