Hello django users,

A few weeks ago I started developing an eLearning-application and chose
Django as a framework. There are several reasons that made me use
django, although I checked out Turbogears, Cherrypy and webpy. (By the
way: What made me use django was the admin interface)

Important: Django rocks anyway!

Every framework has its good and its weak points. What I thought of as
Django's weak point is its model api. As I see it, it violates the DRY
Principle.

In development, I am coming up with changes to my database schema
constantly. That has several reasons:
- my boss comes up with new ideas, which result in unexpected changes
to my data structures
- I make mistakes in the first place, which result in unexpected
changes to my data structures

As soon as I change my database schema, I have several possibilites to
get my app up again:
(a) Change the model. Then drop the current db schema, fire up the new
one. Drawback: I lose my data.
(b) Change the model and change the schema manually. Drawback: I am
repeating myself.
(c) Make everything right from the start. Drawback: Can only be reached
asymptotical. (I won't argue about that :)

What I am saying: The current way of storing the datastructures is
redundant. There are the relations in the database and the models in
the code. Both have to be maintained. I have to repeat myself once my
data structures change.

How can I come out of this? I thought of dynamic classes, that are
created after inspecting the database. That could be inherited from to
use django's other features, like admin-control and special methods.
The good thing is, that backwards compatibility is not lost.

But before getting on with this, I wanted to ask wether somebody has
had some experience with this or if something like this already exists.
Or if I am completely dumb and everybody else is okay with the model
api.


Regards, 
-Justin


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users
-~----------~----~----~----~------~----~------~--~---

Reply via email to