A flexible gem for cloning models
The release name inspired by
The release name inspired by Clowne and Barlborough railway station
The release name inspired by Xiu Xiu "Clowne Towne"
Added after_clone
declaration (PR)
This is intermediate callback between finalize
and after_persist
which is called for built but not persisted record.
class ACloner < Clowne::Cloner
after_clone do |_origin, clone, **|
# actualize user attribute
clone.draft_count = clone.posts.count
end
See more in docs. From Cult of Martians.
Added support for belongs_to
association (only for active_record
adapter) (PR).
Please read small notice if you want to use it.
From Cult of Martians.
Changed resulting API of cloning. For now, Cloner returns individual operation object and provides simple methods to manipulate with it. See more in docs
NOTE: the old API method (e.g. save
) is still working, but deprecated (you'll see a notice).
Implemented DSL to manipulate with already persisted records after the main cloning flow (inspired by https://github.com/palkan/clowne/issues/19). See more in docs
If you are using old Clowne version, see migration guide
Other
Mapper
as a customizable mechanism to restore broken relations while after_persist
execution. See more in docs
This is the first pre-release version.
See docs: https://palkan.github.io/clowne/