app/models/concerns/counter/recalculatable.rb in counterwise-0.1.4 vs app/models/concerns/counter/recalculatable.rb in counterwise-0.1.5
- old
+ new
@@ -7,18 +7,10 @@
elsif definition.manual?
raise Counter::Error.new("Can't recalculate a manual counter")
else
with_lock do
new_value = definition.sum? ? sum_by_sql : count_by_sql
-
- self.class.upsert(
- attributes.without("id", "created_at", "updated_at").symbolize_keys.merge(value: new_value),
- unique_by: [:parent_type, :parent_id, :name],
- on_duplicate: Arel.sql("value = counter_values.value + EXCLUDED.value"),
- record_timestamps: true
- )
-
- reload
+ update! value: new_value
end
end
end
def count_by_sql