Good Morning guys!
Scenario is the following. For some models on Django, I would like to
allow the end user to define his own fields. It would be great if I
could keep all Django awesome features like the ORM, so I can still do
calls like field__gte to search on the model, still have field
validation according to field type, etc. I've thought about two ways
of doing this, and I'm more than open for new suggestions. Any
feedback would be VERY appreciated.

1. The first approach, is the Entity-Attribute-Value (
http://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model
), which django already has an app for. See 
http://code.google.com/p/django-custom-field/
I think this would be an OK solution, but I lose the ability to do
"mymodel.objects.filter(custom_field_x=something)". Maybe there's a
way to regain the ORM, any ideas? But I've heard so many bad stories
about this method that I'm little scared to use it.

2. The second approach would be to have a database table for each of
the users (probably no more than a 1000). I've read django has
something in the lines of inspectdb, which actually checks which
fields are there and produces the model for you. This could be useful
but I think maybe I should store the fields this particular user has
created and somehow dinamically tell django, hey, we also have this
fields in this model. Is this possible? I know it's generally bad to
have different tables for each user, but considering this scenario,
how would you guys rate this method, would it be ok to have one table
for each user?

The model that requires custom fields is for example Person. They
might want a custom field to store address, blood type, or any other
thing.

MANY THANKS in advance! Have a nice sunday!
Bernardo Pires

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-developers@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to