[Python] Django e la definizione dei modelli

Balan Victor balan.victor0 a gmail.com
Mar 12 Giu 2012 18:32:23 CEST


Ciao a tutti,
stavo seguendo la guida introduttiva di django sul sito ufficiale e sono
arrivato al punto dove vengono definiti i modelli. Io ho più o meno questo
codice:

class base_event(models.Model):
id = models.AutoField(primary_key=True)
status =  models.IntegerField()

class system_event(base_event):
    type = models.IntegerField()

Tuttavia quando vado a crea il modello nel database per system_event mi
crea una foreing key a base_event; per certi versi è una cosa giusta però
nella definizione del modello io ho necessità di ereditare una classe base
ma nella definizioni del modello sul database io voglia una definizione
"ridondante". Quindi dentro il database vorrei avere questa situazione:

Tabella base_event:
+---------------+-----------------+
 |      id       |      status    |
+---------------+-----------------+
 |        1      |      open      |

tabella system_event:
+---------------+-----------------+--------------------+
 |      id       |      status    |   type            |
+---------------+-----------------+--------------------+
 |        1      |      open      |   user login    |

 Il motivo è che successivamente avrò bisogno di fare tante operazioni di
update su singoli record e TANTISSIME operazioni di lettura. Quindi se ho
delle chiavi esterne questo si traduce in continui join, finché eredito 1/2
classi potrebbe essere anche accettabile ma se la cosa si traduce in
eredità multiple mi troverei con il database piantato e di conseguenza
anche l'applicazione.


è possibile fare cioè?

spero di non aver fatto troppa confusione ...
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20120612/aa5acf04/attachment.html>


Maggiori informazioni sulla lista Python