[cgiapp] Pre-Announcement and Help Request
Peter Karman
peter at peknet.com
Thu Apr 17 20:53:35 EDT 2008
Ron Savage wrote on 4/17/08 6:01 PM:
>
> I haven't decided if the user's paging should trigger AJAX-style
> requesting of more data, or if I should use a session to pass
> 'where-was-I-up-to' between Rose and the client.
>
I just put params in the URI to indicate the result set. The _page, _offset and
_page_size params are all reserved for that in CatalystX::CRUD.
>> I'm actually at work on refactoring RDGC to install a base set of .pm and .tt files in
>> @INC at install time, rather than generating all that code at run time. I think that will
>
> I generate all code before run-time.
>
sorry, I should have been more clear. RDGC generates all the code used by the
Catalyst app ahead of time. You only run RDGC once, to create all the necessary
files. What I am planning to do in the next release is actually generate *less*
code and instead RDGC will ship with more .pm classes that will be subclassed by
the generated code. So the output of RDGC will be less when you run it, but
RDGC-based classes will actually be used by the running Catalyst app.
E.g., instead of generating a MyApp::Base::Controller::RHTMLO file with a lot of
code in it, RDGC will generate a stub like this:
package MyApp::Base::Controller::RHTMLO;
use strict;
use base qw( Rose::DBx::Garden::Catalyst::Controller );
1;
There's a tradeoff there, because now Rose::DBx::Garden::Catalyst must be
installed on machines where MyApp is deployed. But I think it makes for an
easier upgrade path when a new RDGC is released with more features, because you
do not have to regenerate any files. Just install from CPAN like any other module.
>> make it easier to update RDGC later and get new features. I'll be changing the TT
>> INCLUDE_PATH to look first at the local doc_root and then a the installed .tt file path,
>> so that you can override the installed .tt behaviour with local files. Like subclassing
>> your templates. That means that RDGC is changing from a pure code-generator to more of a
>> turn-key webapp/CRUD solution.
>
> I did see in your code you had a data-only module to ship CSS, JS, etc.
> I decided to adopt YUI too, but to keep it separate. That way people can
> upgrade YUI independently of my code, since my config file holds the URL
> prefix of where YUI's 'build/' dir is installed. Also, it allows me to
> slowly utilize more and more of the YUI feature-set, not just DataTable.
>
yes, RDGC works the same way. I do not bundle YUI. I have a single .js file that
just uses YUI to do some stuff, and then call in the YUI files from the yahoo
site using a configurable head.tt file.
Of note is that the next version of RDGC will have support for YUI 2.5.1, which
has a lot of Datatable API changes in it over the previously supported 2.3.1.
--
Peter Karman . http://peknet.com/ . peter at peknet.com
More information about the cgiapp
mailing list