Ruby on rails 构建是否阻止模型';在你开火之前?
我有两种型号:Ruby on rails 构建是否阻止模型';在你开火之前?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我有两种型号: Room RoomMembers 然后 class RoomMember before_create :default_values def default_values Rails.logger.info 'STUFF' end 创建新房间时。创建默认值之前的RoomMember方法未触发。。。。为什么呢 感谢build本质上是new的别名,它实例化对象,但不保存它。由于在Rails中创建对象只是实例化和保存对象,因此在使用buil
Room
RoomMembers
然后
class RoomMember
before_create :default_values
def default_values
Rails.logger.info 'STUFF'
end
创建新房间时。创建默认值之前的RoomMember方法未触发。。。。为什么呢
感谢build本质上是new的别名,它实例化对象,但不保存它。由于在Rails中创建对象只是实例化和保存对象,因此在使用build时缺少保存部分。看看您的示例,我认为在创建文件室之后而不是之前添加文件室成员更有意义。然后您可以使用create,它应该会触发RoomMember回调
class Room
after_create :add_room_member
def add_room_member
self.room_members.create(:user_id => self.user.id)
end
我想起了一句话:“一个满是空人的房间。”
class Room
after_create :add_room_member
def add_room_member
self.room_members.create(:user_id => self.user.id)
end