我有一个"问题"模型和"标签"模型。我在这两种模型中添加了许多一对多的关联。这就是我现在拥有的:
class Question < ActiveRecord::Base
attr_accessible :content, :score, :title
has_and_belongs_to_many :tags
end
class Tag < ActiveRecord::Base
attr_accessible :description, :name
has_and_belongs_to_many :questions
end
我应该怎么做才能更新数据库和控制器?
谢谢
使用以下命令为联接表创建一个迁移:
$ rails g migration questions_tags question_id:integer tag_id:integer
在数据库中创建表:
$ rake db:migrate
Rails Magic将帮助您填充连接表。我使用has_and_belongs_to_many创建了一个多对多的代码测验,您可能会发现有用。
您可以在此处咨询有关关联的铁路指南。这是从那里开始的代码段:
# Models
class Assembly < ActiveRecord::Base
has_and_belongs_to_many :parts
end
class Part < ActiveRecord::Base
has_and_belongs_to_many :assemblies
end
# Corresponding migration for creating models and join table
class CreateAssembliesAndParts < ActiveRecord::Migration
def change
create_table :assemblies do |t|
t.string :name
t.timestamps
end
create_table :parts do |t|
t.string :part_number
t.timestamps
end
create_table :assemblies_parts do |t|
t.belongs_to :assembly
t.belongs_to :part
end
end
end