0

我有一张主桌和一张 bezirk 桌。

当我将数据插入主表时,我也想在我的 bezirk 表中插入数据。我在 bezirk 中创建的条目应该有主表的 id。

主要型号:

class Main < ActiveRecord::Base
   attr_accessible :category, :latlon
   has_one :bezirk
   accepts_nested_attributes_for :bezirk
end

贝济克型号:

class Bezirk < ActiveRecord::Base
  attr_accessible :beznr, :coordinates, :district_code, :id, :name
  belongs_to :main
end

这就是我尝试这样做的方式...

    main = Main.new(:category => "Bezirk", :latlon => 'POINT(1,2)')
    main.save
    bezirk = main.bezirks.new(:name => 'test', :beznr => 2, :district_code => 1160, :coordinates => 'POINT(1,2)')
    bezirk.save

那么......我怎么能插入到bezirk,相应的主ID!?这样我就可以在两个条目之间建立关联...

4

1 回答 1

2

你可以使用这个:

# create main
main = Main.create(:category => "Bezirk", :latlon => 'POINT(1,2)')

# create bezirk belongs to main, so bezirk will have main_id, is id of main
bezirk = main.create_bezirk(:name => 'test', :beznr => 2, :district_code => 1160, :coordinates => 'POINT(1,2)')
于 2012-11-12T18:00:27.700 回答