Code Monkey home page Code Monkey logo

Comments (2)

chrisdpeters avatar chrisdpeters commented on August 12, 2024

Draftsman will not handle these types of ActiveRecord callbacks where the database is updated directly without interacting with the model, which is a downfall. I'm finding that drafts make everything harder. :)

In my app, I've had to create a draft_position column and manage it manually through a form object. I also handle publishing through a service object, which sorts out a published position column based on the drafts being published. Once you get a handle on form and service objects, you'll find that they're the best way to get through some of these more complex draft situations.

Another option is to just not record drafts for a sort order column. I know that's probably not a good answer though.

Let me know if you have any specific questions. I'll continue to think about how this gem can be friendlier, but I think this sort of stuff is where ActiveRecord starts to draw criticism.

from draftsman.

npafundi avatar npafundi commented on August 12, 2024

Thanks Chris, totally makes sense. I think we're going to do something similar with drafts and position. We're still undecided if acts_as_list is helping or hurting us right now, so we might be dropping it in favor of using our own positioning :)

draftsman is pretty friendly already -- I was just curious how you're handling it. If I come up with something different, I'll let you know.

Thanks for the reply!

from draftsman.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.