Earlier quoted context omitted.
Okay, I see. In that case, you're being tripped up by the fact that `parent = ForeignKey(OtherModel)` actually creates a database field `parent_id`; parent just becomes a synthetic property. AFAIK foreign keys and "_id" is the only place that happens. On the whole though, I think you're exaggerating the "field name magic". Double-underscores in field names would be a bigger problem, but python considers those special…
I've written a HN clone, both in PHP and another one in Django, they look and function exactly the same. The idea was that both could talk to the same database to check performance, and to get an idea about how much code was required in each to accomplish this. This would have worked if I had started from python/django, but writing the PHP part first and then the python part got me caught up a couple of times. Now fo…
you might be interested in the 'db_column' option to Django fields, e.g.
content = models.TextField(db_column='a_different_column_name')
That will allow you to have 'content' on the model, but 'a_different_column_name' in the database. It can be quite helpful for talking to legacy systems.