1

我正在寻找一种在创建父级后添加关联数据库的方法。

我有一个简单的User模型,只有字段username和相关的 ( has_many) 子Place模型placenames

用户创建成功后,表中Places应填入如下条目:欧洲、亚洲、非洲。我认为要走的路是使用该after_create方法,但我找不到如何从我的父模型触发创建。

4

2 回答 2

3

你可以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')
于 2012-02-29T16:01:58.040 回答
0

嗯,不知道你到底想做什么。

您是否从#create 表单中获得了与用户相关联的位置(例如,用户可以使用复选框勾选预定义的位置)?或者用户可以通过逗号分隔的列表提供位置,并且用户创建操作应该清除重复项并将新的位置添加到数据库中?

于 2012-02-29T15:56:43.433 回答