【Django】開発によく使うモデルフィールドを簡単に解説
スポンサードリンク
おはようございます。Shotaです。
今回の記事では、Djangoに登場するモデルフィールドを詳細に解説します。
Djangoが使うモデルは、データベースと強く関連付けられています、Djangoでアプリを開発する時によく使うフィールドとその活用方法を簡単にまとめてみました。
よく使うモデルフィールド
Djangoでモデルフィールドを使う場合は、モデル定義ファイル(models.py
)でrow = models.XXXField()
のように使います。
CharField
文字列を扱うフィールドです。文章を扱うならTextField
を扱ってください。これには引数max_length
を追加できます。
max_length
には自然数(1以上の整数)を指定することで文字数を設定できます。在庫確認アプリでは商品名、Djangoブログでは記事のタイトルによく使われます。
BooleanField
True
, False
を判定するフィールドです。これは、Todoリストにあるタスクを終了する時に付けるチェックボックスでよく使われます。
DateField
日付を扱います。Pythonにおけるdatetime.date
インスタンスによって表示される日付です。以下のような引数があります。これらは省略可能です。
DateField.auto_now
オブジェクトが保存されると、自動的に現在の時刻をセットします。
DateField.auto_now_add
オブジェクトが最初に保存されるとき、自動的にフィールドに現在に日付をセットします。現在の日付が使われることには十分注意してください。
前述のauto_now
と一緒に使うとエラーが発生します。
IntegerField
整数を格納するフィールドです。商品の金額や、SNSにおける「いいね」の数を格納する時によく使われます。
TextField
文章を扱うフィールドです。ブログの本文を格納する時によく使われます。
フィールドオプション
以下の引数は全てのフィールドタイプで有効です。全て省略できます。
null
デフォルトはFalse
です。True
の場合、データベースの中身をnull
(データがなにもない状態。空っぽ)にできます。
blank
デフォルトはFalse
です。True
の場合、フィールドは空にできます。
default
フィールド上で、デフォルトで設定されている値です。このオプションには特定の値や呼び出し可能なオブジェクトを渡せます。
unique
True
の場合、フィールド上に書かれている名前と同じ名前を使うことはできません。
verbose_name
人間が読めるフィールド名です。冗長な名前が与えられていない場合、Djangoはそのフィールドの属性名を使って自動的に作成し、アンダースコアをスペースに変換します。
おわりに
今回の記事では、Djangoの開発でよく使うモデルフィールドをざっくり簡単に解説してみました。
モデルは自分好みにカスタマイズできます。
今回の記事はこれで終了です。
【参考サイト】