[Catalyst] Catalyst FormBuilder plugin on CPAN
Matt S Trout
dbix-class at trout.me.uk
Sat Aug 19 16:38:49 CEST 2006
Nate Wiger wrote:
> Matt S Trout wrote:
>> Nate Wiger wrote:
>>> If you can send me a pointer to writing a controller base class, I'll
>>> certainly check it out. I didn't consider this an option, to be honest.
>>> I was trying to model it after XMLRPC, which is nice and easy to load
>>> with its :XMLRPC attribute. But I'm open to other possibilities.
>> "Poke at Catalyst::Base" - each attr causes the _parse_Name_attr method to be
>> invoked during which you can do as you will.
>>
>> Catalyst::Plugin::XMLRPC is a complete disaster of a design cockup and
>> considered *strongly* disrecommended. Catalyst::Plugin::Server obsoletes it so
>> far as I'm concerned.
>
> Actually, I was talking about Server::XMLRPC - great module, again
> implemented as a Plugin. It could be argued that it belongs as a
> controller base class too, since it does alter the request cycle and add
> an $c->xmlrpc (as well as even forward requests to different urls).
Server::XMLRPC is a plugin because it hooks into the dispatch cycle (and the
authors and I only finally made it a plugin after lots of going round the
houses and not finding an easier way to do it currently; going back and
figuring one out is on the todo list)
Form handling doesn't need to do so, really, so it can go in as a base class
just fine.
> Just to throw an idea out, the plugin architecture could be formalized
> somewhat. Add a register_plugin() method, for example, that doesn't
> allow more than one module to load into $c->{whatever}. A Plugin module
> writer would use this to register their plugin.
>
> It could do some simple housekeeping and throw an exception like so:
>
> Attempt to load Cat conflicts with already loaded plugin Dog
>
> Just a thought.
Yeah, except that there's also a lot of plugins that wrap methods rather than
declaring them. We'd love to do this. How to do it Right is a different matter :)
--
Matt S Trout Offering custom development, consultancy and support
Technical Director contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd. mst (at) shadowcatsystems.co.uk for more information
+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +
More information about the Catalyst
mailing list