0Pricing
Django Academy · レッスン

フィールドオプション:null、blank、default

カラムが受け付ける値を制御します

「フィールドオプション:null、blank、default」はCoddyKit上の無料Django Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDjango Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Django Academyコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

Tune Each Field

Beyond the type, every field accepts options that control what values it will accept and how it behaves.

null Is About the Database

The null option decides whether the database column may store NULL. With null=True, the column can be empty in the database.

summary = models.TextField(null=True)

blank Is About Forms

The blank option controls validation, not the database. With blank=True, forms allow the field to be left empty.

summary = models.TextField(blank=True)

null and blank Are Different

Remember the split: null affects the database layer, while blank affects form validation. They solve two separate problems.

Avoid null on Text Fields

For string fields, skip null and just use blank=True. Django prefers an empty string over NULL to keep two empty states from existing.

note = models.CharField(max_length=100, blank=True)

default Supplies a Value

The default option sets the value used when none is given, so new rows start with sensible data.

views = models.IntegerField(default=0)

Callable Defaults

A default can be a callable like timezone.now. Pass the function itself, with no parentheses, so it runs for each new row.

created = models.DateTimeField(default=timezone.now)

unique Prevents Duplicates

Add unique=True and the database refuses two rows with the same value, perfect for usernames or slugs. 🚫

username = models.CharField(max_length=50, unique=True)

choices Limits the Options

The choices option restricts a field to a fixed set of values and renders a dropdown in forms and the admin.

STATUS = [("d", "Draft"), ("p", "Published")]
status = models.CharField(max_length=1, choices=STATUS)

Options Stack Together

You can combine options freely on one field, like blank=True with default. Stack them to express exactly what you need.

tagline = models.CharField(max_length=120, blank=True, default="")

Changes Need a Migration

Editing an option changes the schema. After tweaking null, default, or unique, run a migration so the database matches.

Quick Check

What is the real difference between null and blank?

Recap: Field Options

You now know that null is database-level, blank is form-level, default seeds values, and unique blocks duplicates. Tune fields with confidence! ✨

よくある質問

「フィールドオプション:null、blank、default」レッスンは無料ですか?

はい。「フィールドオプション:null、blank、default」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Django Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Django Academyコースには全4レッスンが含まれています。

「フィールドオプション:null、blank、default」で何を学びますか?

カラムが受け付ける値を制御します ブラウザで直接実行するハンズオンコードでDjango Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Django Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDjango Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「フィールドオプション:null、blank、default」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDjango Academyレッスンでコードを書いて実行できますか?

はい。すべてのDjango Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. モデルクラスを定義する
  2. フィールド型を選ぶ
  3. フィールドオプション:null、blank、default
  4. strとMetaクラス
← Django Academyに戻る