我正在寻找一种在创建父级后添加关联数据库的方法。
我有一个简单的User
模型,只有字段username
和相关的 ( has_many
) 子Place
模型placenames
。
用户创建成功后,表中Places
应填入如下条目:欧洲、亚洲、非洲。我认为要走的路是使用该after_create
方法,但我找不到如何从我的父模型触发创建。
我正在寻找一种在创建父级后添加关联数据库的方法。
我有一个简单的User
模型,只有字段username
和相关的 ( has_many
) 子Place
模型placenames
。
用户创建成功后,表中Places
应填入如下条目:欧洲、亚洲、非洲。我认为要走的路是使用该after_create
方法,但我找不到如何从我的父模型触发创建。
你可以after_create
这样声明
class User
after_create :initialize_places
def initialize_places
self.places.create(:placename => 'Europe')
self.places.create(:placename => 'Asia')
self.places.create(:placename => 'Africa')
end
end
并像这样创建用户
user = User.create(:username => 'The Black Adder')
嗯,不知道你到底想做什么。
您是否从#create 表单中获得了与用户相关联的位置(例如,用户可以使用复选框勾选预定义的位置)?或者用户可以通过逗号分隔的列表提供位置,并且用户创建操作应该清除重复项并将新的位置添加到数据库中?