Commit 71c53bb3 by Ivan Lan

Fix table_name in pastings

parent 104a77f7
...@@ -3,13 +3,13 @@ module ActsAsPasting ...@@ -3,13 +3,13 @@ module ActsAsPasting
extend ActiveSupport::Concern extend ActiveSupport::Concern
included do included do
has_many :pastings, as: :pasted has_many :pastings, as: :pasted, class_name: 'ActsAsPasting::Pasting'
# ary => [[klass, id], [klass, id]] # ary => [[klass, id], [klass, id]]
# ary => [obj, obj] # ary => [obj, obj]
scope :pasted_with_any, ->(ary) { scope :pasted_with_any, ->(ary) {
ary = parsed_condition_ary(ary) ary = parsed_condition_ary(ary)
ary.map { |klass, id| joins(:pastings).where( ary.map { |klass, id| joins(:pastings).where(
'pastings.pasteable_type = ? AND pastings.pasteable_id = ?', 'acts_as_pastings_pastings.pasteable_type = ? AND acts_as_pastings_pastings.pasteable_id = ?',
klass.constantize.base_class.name, id klass.constantize.base_class.name, id
) )
}.reduce(:or)&.distinct || self.none }.reduce(:or)&.distinct || self.none
...@@ -18,7 +18,7 @@ module ActsAsPasting ...@@ -18,7 +18,7 @@ module ActsAsPasting
scope :pasted_with_all, ->(ary) { scope :pasted_with_all, ->(ary) {
ary = parsed_condition_ary(ary) ary = parsed_condition_ary(ary)
ids = ary.map do |klass, id| ids = ary.map do |klass, id|
joins(:pastings).where(pastings: {pasteable_type: klass.constantize.base_class.name, pasteable_id: id}).pluck(:id) joins(:pastings).where(pastings: { pasteable_type: klass.constantize.base_class.name, pasteable_id: id }).pluck(:id)
end.reduce(:&) end.reduce(:&)
where(id: ids) where(id: ids)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment