我有一个与Profile模型具有has_one关系的Advisor模型,在我的控制器中我有一个包含以下代码的个人资料页面:
@advisor = Advisor.includes(:profile).find(current_advisor_user.id)
@advisor.profile ||= AdvisorProfile.new
当我加载该个人资料页面时 - 它会在数据库中为个人资料创建一个记录,但是我只是想初始化它所以它在我的表单中不是零。
答案 0 :(得分:5)
我想你想要@advisor.build_profile
http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_one
association =(associate) - 分配关联对象,提取 主键,将其设置为外键,保存关联 对象强>
build_association(attributes = {}) - 返回的新对象 已使用属性实例化并链接的关联类型 通过外键但尚未保存来对象。
答案 1 :(得分:2)