DBIx::Class has Postgres-support (but not having had to use the Postgres bits, I don't know how good it is) and
DBIx::Class::Schema::Loader allows for dynamic discovering your tables, fields and keys. Relationships are still a bit of an unexplored area, but hey,
DBIx::Class is still in full development so there is a lot of room to add, amend and update what is missing!
CountZero
"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law