Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

xsawyerx (8978)

  (email not shown publicly)

Journal of xsawyerx (8978)

Wednesday February 11, 2009
12:27 PM

CRUD it up!

[ #38461 ]

Third post in a single day, is that a good or bad thing?

Finally finished the CRUD infrastructure, thanks to HTML::FormHandler. I felt like sharing some good news instead of pent up rage.

Now I can create CRUD methods that are not over 5 lines, finally.

Since most of my projects involve other designers and CMS for clients, I'll definitely be using this for them as well. So, I will be looking into making it as generic and concise as I can. If that will end up well, I might put it on CPAN. Two things trouble me with it though: 1. There's already a lot of CRUD modules there, which I'm sure are more generic than this one and have more functionality. Albeit I personally wasn't able to enjoy any of them, but they do exist so I'm guessing someone is. 2. There's already so much bad code on CPAN and things that don't work, I wouldn't want to add another one and give someone else another module that doesn't work for them 'cos it's not generic enough.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I can't think of a reason not to. If only one other person benefits its worth it. The fact that it is hard to find things on the CPAN is a real problem but that's more of an infrastructure issue.
  • As an author of yet another CRUD framework I am interested in stealing your ideas and code.
    • Not really. I still use what I wrote but haven't released it. I think it needs some work before I could. You're more than welcome to check the source, work with it, play with it and help to release it, obviously.

      However, I have an idea that I wanted to propose and this might be a good place (or not). I want to create a layers model for a CRUD system. That would include scaffolding, form processing, etc. That way, we'll be able to use modules interchangeably and everything will work because they will conve

      • :) - sure. You can have a look at my Catalyst::Example::InstantCRUD module. It is a scaffolding. It does the CRUD part - and it works but I wanted to offload it to something more flexible and possibly RESTful (perhaps using Catalyst::Controller::REST and Catalyst::Request::REST::ForBrowsers).

        My form processing is currently done by Rose::HTMLx::DBIC - another of my modules, but I am not too much attached to Rose (it is a fine module - but I would rather have one object model - and since everyone goes wi

        • I'm all very for the "I don't want to do it like that!" attitude. It's a sum of years of experience and I think it could leverage us and make sure we do things better and not fall over the same things again.

          With regards to your concerns: we don't have to use HTML::FormHandler specifically. The idea is that we figure out a protocol (or, something of that sort) for CRUD and CRUD implementations which will make it possible for users to use either HTML::FormHandler or Rose:HTMLx::DBIC or anything else they want

          • OK - great! I am all for constructing interfaces between all the layers. There is just one thing - see CatalystX::CRUD - it is designed with the idea of interchangeable database layer - and I think the result is too complex. The reason for that is that the DBIC model is the schema - that is the whole database - while in RDBO the model is one table (at least in CatalystX::CRUD::Model::RDBO). In my opinion this creates too much friction between those two to hide it behind one interface. And by the way I