2016-09-20 153 views
0

我想編寫一個視圖來將某些模型字段值重置爲默認值。我如何獲得默認模型字段值?django獲取默認模型字段值

class Foo(models.Model): 
    bar_field = models.CharField(blank=True, default='bar') 

所以我要的是:

def reset(request, id): 
    obj = get_object_or_404(Foo, id=id) 
    obj.bar_field = # logic to get default from model field 
    obj.save() 
    ... 
+0

更具體一點,你到底想做什麼? – sebb

+0

已更新@SebastianBurzyński – Goran

+0

Duplicate:https://stackoverflow.com/questions/1308332/how-do-i-get-the-default-value-for-a-field-in-a-django-model – ThePhi

回答

0
myfield = Foo._meta.get_field_by_name('bar_field') 

,默認就是現場的屬性:

myfield.default 
+0

其實它是myfield = Foo._meta.get_field('bar_field'),但你指向正確的方向。謝謝。 – Goran

+1

在Django 1.10中棄用:https://docs.djangoproject.com/en/1.11/ref/models/meta/#module-django.db.models.options – ThePhi