We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 20740
    • 9 Posts
    Hope nobody will say that it is easy to learn and use ModX+xPDO+Lexicon engine+Smarty+ExtJS+component build scripts and I had to do it just to make a simple Revolution-style custom manager page. I wouldn’t manage to do it without tutorails from http://svn.modxcms.com/docs/display/revolution/MODx+Revolution (there are some bugs there, but thanks anyway smiley ).
    I’v recently read a book about Ruby on Rails (hope no one has allergy to it wink ) and found many analogies between Rails and Revolution, and now I’v got some ideas about makeing developement for Revo much easier.

    1) My experiments with Revo showed that I need to create a lot of standard stuff (php scripts, directories) to make a 3rd Party Component. I suggest that there should be some script to do this work. Maybe some settings could be passed to it in XML like when you generate xPDO model.
    Found a link in this forum: http://www.phpobjectgenerator.com/ - that seems to be close to what I mean.

    The second idea is going further than that

    2) When one makes not just a site, but some "serious" system that needs to manage custom objects (e.g. on-line store) it is not convenient to use Web Resources + TVs. To support it one should create 3rd Party Component that supports those objects. For now we have only automatic generation of the model by xPDO - it’s cool but not enough. If it could also generate "scaffold" for data maintenance! Here is what I think: if to add couple of attributes into model’s XML there would be enough info to build views (with ExtJS stuff) and controllers (AJAX server part) for basic operations (list + CRUD). That can bring Modx Revolution to a new level and make it a very very very popular framework! grin

    Core developers, what do you think about it?
      • 28215
      • 4,149 Posts
      splittingred Reply #2, 17 years ago
      Quote from: MWM at Sep 30, 2009, 02:58 PM

      Hope nobody will say that it is easy to learn and use ModX+xPDO+Lexicon engine+Smarty+ExtJS+component build scripts and I had to do it just to make a simple Revolution-style custom manager page.

      Just want to reiterate - you dont *have* to use ExtJS, xPDO, the Lexicon engine, or Smarty to make a Custom Manager Page. They are simply there for your usage *if you want them*.

      Also, I don’t find Lexicons that complex; certainly easier than other CMS systems integrations.

      You can definitely make a simple 3PC that doesnt use ExtJS at all, loads a custom manager page (CMP), and uses mysql_connect. Now we recommend you use xPDO because it’s vastly easier to use.

      I wouldn’t manage to do it without tutorails from http://svn.modxcms.com/docs/display/revolution/MODx+Revolution (there are some bugs there, but thanks anyway smiley ).
      Well, I can’t tell you of any system that allows you to create exactly what you want without reading one or two tutorials.


      1) My experiments with Revo showed that I need to create a lot of standard stuff (php scripts, directories) to make a 3rd Party Component. I suggest that there should be some script to do this work. Maybe some settings could be passed to it in XML like when you generate xPDO model.
      We plan to offer a few more development "aides" as we get closer to RC1. A build generation model is one of those things, but we’re trying to fix major bugs first.

      I have in mind of a script that auto-creates basic files and objects needed for a 3pc, but we’ll see.


      2) When one makes not just a site, but some "serious" system that needs to manage custom objects (e.g. on-line store) it is not convenient to use Web Resources + TVs. To support it one should create 3rd Party Component that supports those objects. For now we have only automatic generation of the model by xPDO - it’s cool but not enough. If it could also generate "scaffold" for data maintenance! Here is what I think: if to add couple of attributes into model’s XML there would be enough info to build views (with ExtJS stuff) and controllers (AJAX server part) for basic operations (list + CRUD). That can bring Modx Revolution to a new level and make it a very very very popular framework! grin
      Core developers, what do you think about it?
      I think that’s a neat idea in practice - but nearly impossible in reality. There’s a ton of factors - what would the CMPs look like? How are the model relationships defined? What’s the function of the CMP? What’s the management system actually do in the backend? What are the aggregate/composite relationships between tables, and how are those represented in the management interface? I personally think you’re simplifying a vastly complex idea.

      If you think it’s possible, please; go ahead and develop a working model and we’ll look at integrating it.

      And all that said, as a developer of 10+ years, I find Revolution vastly more "developer-friendly" than any other system on the market. Especially Rails.

      Thanks for your thoughts.
        shaun mccormick | bigcommerce mgr of software engineering, former modx co-architect | github | splittingred.com
        • 28215
        • 4,149 Posts
        splittingred Reply #3, 17 years ago
        Also, these things would come into reality much faster if the developers clamoring for these things in the Open Source project would help commit more to the Open Source MODx Revolution to get it up-to-speed to free the core developers (Jason and I) to work on the more advanced functionalities.

        Not to rant, but you get what you give. wink
          shaun mccormick | bigcommerce mgr of software engineering, former modx co-architect | github | splittingred.com
          • 20740
          • 9 Posts
          I just want to mention that I DO LIKE MODX! laugh
          That’s why I chose Revo as a platform for my new project and waiting impatiently for RC1. I understand how much work you do an feel grateful to all the people who make opensource projects.
          Glad to see that you have plans to make developement easier.

          Also, I don’t find Lexicons that complex
          me too grin

          I think that’s a neat idea in practice - but nearly impossible in reality. There’s a ton of factors - what would the CMPs look like? How are the model relationships defined? What’s the function of the CMP? What’s the management system actually do in the backend? What are the aggregate/composite relationships between tables, and how are those represented in the management interface? I personally think you’re simplifying a vastly complex idea.
          The idea is to simplify the problem wink No need to make all the work for developer - give the simpliest "scaffold" and let people have fun with it. It should be a tool for devloper, not a "magic wand".

          If you think it’s possible, please; go ahead and develop a working model and we’ll look at integrating it.
          I’ll try to make detailed concept for second part and discuss it here, but my codeing is not very neat so I’ll need some (a lot?) help wink.