Ruby on rails 在Rails活动记录中创建丰富的多对多关联
我是rails的初学者,正在学习入门rails 4第3版: 我有3个丰富的多对多关联模型: 1-评论 第2条 3-用户Ruby on rails 在Rails活动记录中创建丰富的多对多关联,ruby-on-rails,activerecord,associations,Ruby On Rails,Activerecord,Associations,我是rails的初学者,正在学习入门rails 4第3版: 我有3个丰富的多对多关联模型: 1-评论 第2条 3-用户 class Comment < ActiveRecord::Base belongs_to :article end class Article < ActiveRecord::Base validates_presence_of :title validates_presence_of :body belongs_to :user has_
class Comment < ActiveRecord::Base
belongs_to :article
end
class Article < ActiveRecord::Base
validates_presence_of :title
validates_presence_of :body
belongs_to :user
has_and_belongs_to_many :categories
has_many :comments
def long_title
"#{title} - #{published_at}"
end
end
class User < ActiveRecord::Base
has_one :profile
has_many :articles, -> {order('published_at DESC, title ASC')},
:dependent => :nullify
has_many :replies, :through => :articles, :source => :comments
end
在我看来,这种关联工作得很好,但是当我尝试使用rails控制台时,我必须关闭它并重新打开它以应用更改,除非user.repress.empty?永远都是真的
注意,我试过重新加载!但在我重新打开rails控制台之前,这些更改仍然不起作用。
你知道为什么会有这种行为吗?这取决于你没有看到什么变化。如果您更改代码,只需调用重新加载!方法: 如果您正在通过Rails服务器更改数据,可能是在您有一个正在运行的控制台的情况下,那么在您的对象上调用reload就是您想要的:
user = User.first
# change some stuff in the database
user.reload
# user now has the changed data
您的问题/问题到底是什么?为什么rails控制台需要关闭并重新打开以应用丰富的多对多关联中的更改?
user = User.first
# change some stuff in the database
user.reload
# user now has the changed data