我想了解Rails如何在外鍵和主鍵方面工作。來自純SQL背景的Rails方法對我來說似乎非常陌生。 我有以下兩個遷移:RoR中的模型協會
組
class CreateGroups < ActiveRecord::Migration
def self.up
create_table :groups do |t|
t.string :title
t.text :description
t.string :city
t.integer :event_id
t.string :zip
t.string :group_id
t.text :topics
t.timestamps
end
end
def self.down
drop_table :groups
end
end
和事件:
class CreateEvents < ActiveRecord::Migration
def self.up
create_table :events do |t|
t.string :title
t.string :description
t.string :city
t.string :address
t.time :time_t
t.date :date_t
t.string :group_id
t.timestamps
end
end
def self.down
drop_table :events
end
end
一個組可以有許多事件和事件可以屬於一個組。我有以下兩種模式:
class Event < ActiveRecord::Base
belongs_to :group, :foreign_key => 'group_id'
end
和
class Group < ActiveRecord::Base
attr_accessible :title, :description, :city, :zip, :group_id, :topics
has_many :events
end
不知道如何指定外鍵和主鍵此。例如,一個組由group_id列標識,並使用該列我需要獲取屬於單個組的事件! 我該如何做到這一點!
你不必明確指明瞭'belongs_to'了'foreign_key'名如果它是你的形式('associationname_id')。 – 2012-03-24 19:14:11