On Sunday, August 20, 2017 at 7:29:49 PM UTC-7, Nick wrote: > > I really like sequel, and I really like dry-types, and I'm not a big fan > of the active model pattern - has any one tried to write some integration > code to provide some persistence style glue between sequel and dry-types? > A quick google search turned up nothing... > > I'm wanting to be able to do something like: > > persistence = Sequel::DryTypes.new(cnx) > type = My::Type.new(:foo => 'bar') > persistence.save(type) > new_type = persistence.fetch(type.id) > > Anyone got any clues, tips or advice? :) >
No experience here. I will say that this code example looks a little odd. I understand the advantages (and disadvantages) of separating persistence from modeling, but having the persistence code mutate the object passed in (to set the id) seems to go against the separation. After all, if the persistence layer would mutate the object, why would it mutate just the id and not the entire object? The separation between persistence and modeling makes more sense if you are doing: saved_type = persistence.save(type) new_type = persistence_fetch(saved_type.id) Or even better: new_type = persistence.save_and_fetch(type) assuming that save_and_fetch would apply the same optimization that Sequel::Model#save would do in regards to using INSERT ... RETURNING (or the equivalent for the database). Thanks, Jeremy -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/sequel-talk. For more options, visit https://groups.google.com/d/optout.
