运行迁移后更改模型关联

时间:2013-05-09 08:26:01

标签: ruby-on-rails model rails-migrations model-associations

我有一个Devise用户模型,其中包含以下内容,我确实已经运行了迁移。

class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :token_authenticatable, :confirmable,
  # :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable, :token_authenticatable, :confirmable, :lockable,
         :recoverable, :rememberable, :trackable, :validatable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :email, :password, :password_confirmation, :remember_me, :role
  # attr_accessible :title, :body


  ROLES = ['admin', 'network/system admin', 'manager', 'programmer']

  def role?(base_role)
    ROLES.index(base_role.to_s) <= ROLES.index(role)
  end

end

稍后,我将以下两行添加到同一模型中,并为故障单,项目和作业运行迁移。

  has_many :projects, :through => :assignments
  has_many :tickets

以上是否更新了用户与故障单和项目的关联?在运行迁移之后更改模型中的关联是否有任何问题?我想知道它,因为我现在正在开发一个Rails应用程序。

谢谢:) -

1 个答案:

答案 0 :(得分:0)

您还应该有关联......

has_many :assignments

在您的用户模型中。

无需其他更新。