0

我在 Rails 上有这些模型:

class Tweet < ActiveRecord::Base
  attr_accessible :status
  belongs_to :user
end

class User < ActiveRecord::Base
  attr_accessible :name
  has_many :tweets
end

但在 bd 上,这些模型之间没有关系。我需要进行哪些迁移才能将 user_id 添加到推文表中?

4

2 回答 2

3

您需要将其添加user_id到您的Tweet模型中,然后在您的模型中您可以执行以下操作:

rails g migration add_user_id_to_tweets user_id:integer

这将为您提供以下输出

  class AddUserIdToTweet < ActiveRecord::Migration
  def change
    add_column :tweets, :user_id, :integer
  end
end
于 2013-05-29T21:10:24.480 回答
2

有要运行的迁移

change_table :tweets do |t|
  t.references :user
end

这将在表中添加一个名为user_id的列tweets。(不要忘记运行rake db:migrate更新数据库!)

(ActiveRecord::ConnectionAdapters::SchemaStatements)的文档change_table- APIdock

于 2013-05-29T21:11:13.560 回答