Voglio popolare un campo prima della convalida in admin.come posso creare un metodo pulito personalizzato per il sito di amministrazione?
models.py
class Ad(models.Model):
.....
manual_code = models.BooleanField("Manual Code", default=False)
code = models.TextField("Code")
admin.py
class MyAdAdminForm(forms.ModelForm):
class Meta:
model = Ad
def clean(self):
cleaned_data = self.cleaned_data
cleaned_data['code'] = "dadad"
print cleaned_data
return cleaned_data
class AdAdmin(admin.ModelAdmin):
form = MyAdAdminForm
admin.site.register(Ad, AdAdmin)
alla fine voglio generare tutto quel "codice" di campo, ma sto ancora ottenere l'errore di amministrazione che il campo è vuoto anche se posso vedere il valore di esso ("dadad") nella shell.
Ho anche provato
def clean_code(self):
e non stava chiamando quella funzione a tutti.
e ho anche provato
def save_model(request,....):
nella classe AdAdmin ma non stava chiamando che o.
quindi cosa devo fare?
Non dovrebbe pulire() avere un livello di indentazione per far parte di MyAdAdminForm? – jpic
ha nel mio codice, lo correggerò qui. –