With Glom you can design table definitions and the relationships between
them, plus arrange the fields on the screen. You can edit and search the
data in those tables, and specify field values in terms of other fields.
It's as easy as it should be.
Glom uses the PostgreSQL database backend but it can not edit databases
that it did not create, because it uses only a simple subset of Postgres
Here are some screenshots, with explanations:
Glom is written in C++, with gtkmm, Bakery, and libgdamm. It uses
Python for calculated fields, with help from pygtk.
More information is at
glom 0.8.22 - changes since 0.8.18:
* Field Definitions:
- Do not save empty default values as "NULL" or 0.
- Prevent crash when opening Field details a second
- Allow saving when the default value changes.
- Calculated fields:
- Your python function can now use the record's
other field values.
- Aggregate calculations (sum, count, max, min)
on related records.
- Calculated fields may use the results of
other calculated fields.
(Demonstrated in the Invoice table in the example.)
- Do lookups, and refresh related fields, when
adding new records, not only when changing existing
- Related Records now use all available layout
width, instead of having a fixed width.
* Details and Lists Layout:
* List and Details: When defining the layout, developers
can specify numeric formatting, such as decimal places,
and currency symbols.
* Added highly experimental File/Print menu item. It
does stuff in the Details view. It should open some
HTML in your browser. glom installs an XSLT file
used to create the HTML, so feel free to improve it.
- g++ 3.4 build fixes.
- Fix the boost::python build problem.
* Boring Internals:
- The List view's TreeModel now gets the data from the
database dynamically on-demand, though it probably
needs some more work to do that as efficiently as
- Now depends on pygtk and gnome-python-extras/libgda.
- Pango markup and spaces not marked for translation.
- Added Swedish (Christian Rose),
Kinyarwanda translation. (Steve Murphy)
- Updated Albanian (Laurent Dhima),
Canadian English (Adam Weinberger),
Czech (Miloslav Trmac), German (Hendrik Brandt),
Spanish (Francisco Javier Fernandez).