2012-05-31 14 views
5

Vorrei creare alcune variabili di istanza per la sottoclasse del mio modello, ma quando si salva l'oggetto nel database non desidero una colonna di tabella per tale variabile. Ho letto in alcuni punti che dovresti eseguire questa operazione ignorando init() come se dovessi creare normali variabili di istanza in altre classi. È questo il modo accettato per sottoclassi di modello? Ci sono altri approcci?variabili di istanza del modello django per uso transitorio

models.py:

class MyModel (models.Model): 
    name = models.CharField(max_length=300) 

    def __init__(self, *args, **kwargs): 
     super(MyModel, self).__init__(*args, **kwargs) 
     self.tempvar = '' 

views.py:

myModel = MyModel() 
myModel.tempvar = 'this will not be saved in the database' 

risposta

3

Questo è un modo accettabile di farlo, anche se non è necessario inizializzare a meno che non ci sia una possibilità che si può provare per accedervi quando non esiste. Inoltre, considera se dovresti utilizzare una proprietà.

Problemi correlati