Tag: 具有许多通过

活动logginghas_many:通过删除一个关联的logging

这可能是我的一个非常基本的监督,但我似乎无法想起一个简单的方法来消除通过has_many :throughjoin的两个对象之间的关联。 IE: class Photo has_many :tags, :through => :taggings has_many :taggings, :dependent => :destroy end class Tags has_many :photos, :through => :taggings has_many :taggings, :dependent => :destroy end class Taggings belongs_to :photo belongs_to :tag end 如果你有两个对象, tag和photo ,你可以通过这样做来关联它们: photo.tags << tag 那么,是否有与此相反的简单对比? 即: photo.tags.remove tag

Rails:has_many通过多态关联 – 这个工作吗?

一个Person可以有多个Events ,每个Event可以有一个多态的可Eventablelogging。 如何指定Person和Eventablelogging之间的关系? 这里是我有的模型: class Event < ActiveRecord::Base belongs_to :person belongs_to :eventable, :polymorphic => true end class Meal < ActiveRecord::Base has_one :event, :as => eventable end class Workout < ActiveRecord::Base has_one :event, :as => eventable end 主要问题涉及Person类: class Person < ActiveRecord::Base has_many :events has_many :eventables, :through => :events # is this correct??? end 我是否说has_many :eventables, […]

依赖=>摧毁一个“has_many通过”关联

当使用:through选项时,显然依赖=> destroy将被忽略。 所以我有这个… class Comment < ActiveRecord::Base has_many :comment_users, :dependent => :destroy has_many :users, :through => :comment_users … end …但删除评论不会导致关联的comment_userlogging被删除。 那么推荐的方法是什么,然后,使用时:级联删除:通过? 谢谢

如何将logging添加到has_many:通过rails中的关联

class Agents << ActiveRecord::Base belongs_to :customer belongs_to :house end class Customer << ActiveRecord::Base has_many :agents has_many :houses, through: :agents end class House << ActiveRecord::Base has_many :agents has_many :customers, through: :agents end 如何添加到Customer的业务Agents模型? 这是最好的方法吗? Customer.find(1).agents.create(customer_id: 1, house_id: 1) 上面的工作从控制台罚款,但是,我不知道如何在实际应用中实现这一点。 设想一个表格填充为客户,也以house_id作为input。 那么我在我的控制器中执行以下操作? def create @customer = Customer.new(params[:customer]) @customer.agents.create(customer_id: @customer.id, house_id: params[:house_id]) @customer.save end 总的来说,我很困惑如何在has_many :through添加logginghas_many :through表?