Hello

> Chris, Alberto and I have been working hard in the CRUD area.
> I think, much advancements have been made in this area.
>
> So, I am very interested, how data is entered in average TG/TG2/...
> web applications.
>
> Is your admin interface web based?

The answer is a bit complicated. The Web application itself can be
considered an "admin interface": it doesn't have a read-only area with
fancy pages and reports (well, it almost doesn't).
In other words, it /is/ an application in the full sense :-)

However, there are two types of data input:
- data input by operators (with various permission levels), which is
of course done through the Web interface; let's call it "daily data"
- data input by myself, as an admin, when doing bulk imports of
existing legacy data (data that was in use before the application was
written, or got whatever additional feature), or when performing
certain rare and priviledged tasks (like adding users); let's call it
"exceptional data"

> Is it hand written, or do you use existing CRUD solutions?
>
For both, hand-written. I had considered using a CRUD solution for the
sole user/group/permission thing, but existing solutions didn't seem
mature and functional enough.

> Who enters the data?
>
- daily data: various operators
- exceptional data: me, after it was sent it to me by my client (often
as baroquely-formatted CSV files :-))

> How many persons use the admin interface?
>
- daily data: several dozens
- exceptional data: 1 (me)

> How long per day are they supposed to work with it?
>
- daily data: 8 hours a day for some of them (full time)
- exceptional data: almost never

> Are there granular permissions requirements?
> Table permissions (which classes/ tables can be edited), Row level
> permissions (which objecs can be edited), column level permissions
> (block specific attributes)?
>
I've built my permissions at the functional level (that is, at the
controller/method level), but it could be approximated by a model- or
database-level permission system. Most of it abounds to table-level
permission, but there is a bit of row-level permission (depending on
certain joins with some additional property I've added to the Group
object), and even column-level permission (for a single sensitive set
of columns).

> How many tables does your database contain? Or can you give any
> measure for the complexity?
>
Roughly 15 tables.

> Do you use additional tools for your database for querying/editing the
> data?
>
Custom scripts for (often one-off) importation CSV data. There are
also a couple of Web forms so that users of the Web UI can import
their own CSV data, in specific formats.

> What additional requirements do you have, that are not fulfilled by
> todays CRUD packages?
>
Two major requirements I can think of:

The possibility to define how a relation is chosen/modified (having to
choose in a drop-down of 1000 items is stupid; I need e.g. some
autocomplete field based on some (supposedly unique) column of the
joined table).

The possibility to specify that a VARCHAR field is really an enum, and
to specify what labels (on the UI side) correspond to what values (on
the DB side).

Then, of course, there's layout flexibility, custom validation, etc.
An useful CRUD package should be something else than a smart version
of phpmysql.

Regards

Antoine.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to