我正在尝试在创建父模型时自动构建子模型,如this post中所述。假设我有两个模型Person
has_one :folder
,我想在人创建时创建一个文件夹为了做到这一点我进入Person
模型并且(从上面的示例中)执行以下操作
has_one :folder
before_create :build_default_folder
private
def build_default_folder
build_folder
true
end
这是有道理的,但是说Profile
有一些属性,我想根据Folder
的属性设置Person
的属性。就好像这个人有:person_name
我应该怎么做才能将:folder_name
设置为“[person_name]'s_Folder”?
感谢您的任何建议。
答案 0 :(得分:1)
您可以从子模型访问父属性:
class Profile < AR::Base
has_one :folder
before_create :build_default_folder
private
def build_default_folder
build_folder(folder_name: person_name)
true
end
end