2017-06-09 1 views
-1

Ich habe ein Django-Modell, das ein JSONField hat, speichert es alle notwendigen Dinge. Ich muss JSONField verwenden, um Daten ohne normale Felder zu sammeln.Update nicht Modell Feld Klassenvariablen ich Django Modelle

Mein Modell sieht so aus.

class MyModel(models.Model): 
    json_content = JSONField(default=dict) 
    def __init__(self, *args, **kwargs): 
     self.value1 = self.json_content 
     self.value2 = self.json_content 

Ich möchte einige Klassenvariablen (Wert1, Wert2) haben, die ich während der Modellinitialisierung aktualisieren möchte. Ich werde dies als:

m = MyModel() 
m.value2 = 'some thing' 

Aber json_content nimmt nicht JSONField Daten während der Initialisierung. Wie behebe ich das?

Antwort

0

Ihr zweites Snippet zeigt, dass Sie während der Initialisierung keine Daten übergeben. Also ist das Überschreiben der __init__ Methode völlig sinnlos, und Sie sollten diesen Code entfernen.