Django Modelにおけるフィールドの各種オプション説明


フィールドとオプション
Char Field()文字フィールド
max_length=xxx or None獞必オプション
blank=Trueとdefault=''菗は必須項目でないと設定できます。
unique=True钻を唯一にしたいなら、例えばusernameに使うと設定できます。
checes=xxx_CHOICES噫がチョイスオプションがあれば、設定できます。
Text Field()テキストフィールド
max_length=xxx
blank=Trueとdefault=''菗は必須項目でないと設定できます。
DateField()and DateTimeField()日付と時間フィールド
default date Te一般推奨デフォルト日付設定
DateField:default=date.todadaday〹はバッグfrom dateme import dateを導入する必要があります。
DateTimeField:default=timezone.now菗はバッグfrom django.utils import timezoneを導入する必要があります。
autonow=True〓〓前の修正日(last_)に対してmodifiel date)は、設定できます。
メールフィールド
unique=True𞃳の一般的なEmailはユーザー名に使うのが唯一であるべきで、設定を提案します。
Integer Field(),SlugField(),URL Field(),Bool Field()
blank=Trueとdefault=''菗は必須項目でないと設定できます。
default=True or False〓Bool Fieldに対する一般的な推奨設定
FileField()ファイルフィールド
upload_ト=「/some folder/」啱文件がファイルを指しているので、必ず記入してください。
max_length=xxx
ImageField(up load_ト=None、**options)イメージフィールド
upload_ト=「/some folder/」zhi写真はファイルを指していますので、必ず記入してください。
ヘightfield=None
width_field=None
max_length=xxx
ForeighKey(to,on_delete、**options)ペアの多関係
ト〹は他のモデルを指していなければならない。
うむdelete=models.cade or models.SET_NULLdelete指定削除オプション
「default=xxx」or「null=True」
「limit_checesト=「xiが必要であれば、設定できます。
related_name=xxx〓〓〓は逆方向に検索しやすいです。
例:

xxx = models.ForeignKey(xxx,
   on_delete = models.CASCADE,
   limit_choices_to = {'is_staff':True},
   related_name = xxx)
ManyToManyField(to、**options)は多対多関係です。
ト铅は他のモデルだけを考えなければなりません。
symmetrical=False〓〓多対多関係が対称でない場合、設定できます。
through='intermediary model Tailは中間モデルを作ってもっと多くの情報を収集する必要があるなら、設定できます。
related_name=xxx〓〓〓は逆方向に検索しやすいです。
補足の知識:djangoはannotateを使ってフィールドを定義した後、並べ替えてページをめくります。
objs=A.object.annotate(number=Sum('b_unumber).order_by('-number')
この時、Objsに対してページをめくり、numberのデータと同じところでページをめくるとデータが混乱する可能性があります。
解決方法は、id順序を追加します。
objs=A.object.annotate(number=Sum('b_unumber).order_by('-number'、'id')
以上のDjango Modelのフィールドの各種オプション説明は、小編集が皆さんに提供している内容の全てです。参考にしていただければ幸いです。よろしくお願いします。