programing

장고 모델에서 필드의 기본값을 설정하려면 어떻게 해야 합니까?

bestprogram 2023. 8. 5. 10:45

장고 모델에서 필드의 기본값을 설정하려면 어떻게 해야 합니까?

모델이 있다고 가정합니다.

class SomeModel(models.Model):
    id = models.AutoField(primary_key=True)
    a = models.CharField(max_length=10)
    b = models.CharField(max_length=7)

현재 기본 Django admin을 사용하여 이러한 유형의 개체를 생성/편집하고 있습니다.Django 관리자에서 필드를 제거하여 각 개체를 값으로 만들 수 없고 대신 기본값인0000000?

세트editable로.False그리고.default기본값으로 설정합니다.

http://docs.djangoproject.com/en/stable/ref/models/fields/ #http://editable

b = models.CharField(max_length=7, default='0000000', editable=False)

또한, 당신의id필드가 필요하지 않습니다.장고가 자동으로 추가합니다.

기본 필드에서 다음과 같은 호출을 사용할 수도 있습니다.

b = models.CharField(max_length=7, default=foo)

그런 다음 호출 가능 항목을 정의합니다.

def foo():
    return 'bar'

다음과 같이 기본값을 설정할 수 있습니다.

b = models.CharField(max_length=7,default="foobar")

그런 다음 다음 모델의 관리 클래스로 필드를 숨길 수 있습니다.

class SomeModelAdmin(admin.ModelAdmin):
    exclude = ("b")

언급URL : https://stackoverflow.com/questions/755857/how-can-i-set-a-default-value-for-a-field-in-a-django-model