2012-09-06 4 views
0

모든 모델의 필드에 할당 된 기본값을 프로그래밍 방식으로 찾는 방법이 있는지 알고 싶습니다. 모델 인스턴스와 필드 이름이 있습니다.Django 모델에 기본값이 있는지 확인하십시오.

아래 모델에서 데이터를 올바르게 저장할 수 있으려면 Null이면 allow_profile 및 allow_profile에서 기본값을 가져와야합니다. 데이터베이스는 파이어 버드

예 모델이다 : 모델 필드에 할당 된 기본

class Fitting(models.Model): 
    uuid       = UUIDField(primary_key=True) 
    bought_in_control_panel_file = models.ForeignKey(BoughtInControlPanelFile, db_column='bought_in_control_panel_file_id',null=True, blank=True) 
    name       = models.CharField(_('name'),null=True, blank=False,max_length=255)       
    code       = models.CharField(_('Code'),null=True, blank=True,max_length=255) 
    fire_rating     = models.ForeignKey(FireRating, db_column='fire_rating_id',null=True, blank=True) 
    u_value      = models.FloatField(_('U-value'),default=0) 
    acoustic_rating    = models.FloatField(_('Acoustic Rating'),default=0) 
    allow_profile    = models.BooleanField(default=0) 
    disabled      = models.BooleanField(default=0) 
    date_time_updated   = models.DateTimeField(null=True, blank=True, auto_now=True) 

답변

3

model_field.get_default() 반환

예 :

model = Polls.objects.all() 
for model_field in model: 
    print model_field.get_default() 
0

장고 자동으로 모델을 저장합니다 인스턴스를 저장하고 필수 Null이 아닌 필드를 설정하지 않은 경우 기본값을 사용하여 인스턴스를 만듭니다.

개체가 명시 적으로 설정되지 않은 경우 기본값으로 DB에 저장되지 않습니까?

default 속성 값은 새 개체가 저장 될 때 호출되는 함수가 될 수 있습니다. 당신도 그것을 시도 할 수 있습니다.

+0

아니요, DB 인터페이스가 비표준이므로 아닙니다. 나는 Firebird를 사용한다. – Jharwood

+0

@ Jharwood 귀하는 그러한 정보로 질문을 업데이트해야합니다. – Rohan

관련 문제