Since I could not beat Darren Duncan to first post, I had to beat him
to first complete app in Rose::DB::Object :). Other technologies were
Data::FormValidator, CGI::Prototype::PathInfo, and HTML::Seamstress.

I have implemented a cgi guestbook using Rose::DB::Object. Play with
it here:

  http://www.metaperl.org/Guestbook

You can look at the Rose-based code here:
  
   # db setup classes ...
   http://www.metaperl.org/Guestbook/DB.pm
   http://www.metaperl.org/Guestbook/Model.pm

   # The row-class for the entry table
   http://www.metaperl.org/Guestbook/Model/entry.pm

   # The Manager-class for the entry table
   http://www.metaperl.org/Guestbook/Model/entry/Manager.pm

   # A class which uses the row and manager to unroll a table
   http://www.metaperl.org/Guestbook/viewsrc/view
  
   # A class which uses the row and manager to count a rowset
   http://www.metaperl.org/Guestbook/viewsrc/stats

If you want to get the entire Guestbook app, then install darcs and
type:

  darcs get http://www.metaperl.org

The thing I enjoyed about using Rose is that Class::DBI
*requires* that you give the primary key column when creating row
objects. With Rose, I just left it out and it formulated the right
SQL. DBIx::SQLEngine tried to put a NULL for the primary key column
when I left it out and I could not supply either DEFAULT or
nextval('seq_name') to it without it munging it in someway that
DBD::Pg would not accept.

I built the database schema using the excellent Alzabo schema
editor. Here is the schema (all one table of it):

  
http://www.metaperl.com/alzabo/schema/view_table.html?table=entry&schema=terry_guestbook


I'm sorry about how ugly the web app is: I'm reading my first book on
css and xhtml right now, so I expect that part to get prettier and
prettier the more I read :)

-- 
        Carter's Compass: I know I'm on the right track when,
           by deleting something, I'm adding functionality.



-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
cgi-prototype-users mailing list
cgi-prototype-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cgi-prototype-users

Reply via email to