{"title":"バリデータ","version":"3.1","locale":"ja","docname":"ref/validators","url":"/ja/3.1/ref/validators/","canonical":"https://djangodocs.dev/ja/3.1/ref/validators/","summary":"バリデータを記述する Link to this heading # バリデータは、値を取って 特定の条件に合致しない場合に ValidationError を返す呼び出し可能オブジェクトです。バリデータは、異なるタイプのフィールド間におけるバリデーションロジックを再利用したいときに役立ちます。…","html":"<span id=\"validators\"></span><h1>バリデータ<a class=\"heading-anchor\" href=\"#module-django.core.validators\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"writing-validators\">\n<h2>バリデータを記述する<a class=\"heading-anchor\" href=\"#writing-validators\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>バリデータは、値を取って 特定の条件に合致しない場合に <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> を返す呼び出し可能オブジェクトです。バリデータは、異なるタイプのフィールド間におけるバリデーションロジックを再利用したいときに役立ちます。</p>\n<p>例えば、以下は偶数のみを許容するバリデータです:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.core.exceptions</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ValidationError</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.utils.translation</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">gettext_lazy</span> <span class=\"k\">as</span> <span class=\"n\">_</span>\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">validate_even</span><span class=\"p\">(</span><span class=\"n\">value</span><span class=\"p\">):</span>\n    <span class=\"k\">if</span> <span class=\"n\">value</span> <span class=\"o\">%</span> <span class=\"mi\">2</span> <span class=\"o\">!=</span> <span class=\"mi\">0</span><span class=\"p\">:</span>\n        <span class=\"k\">raise</span> <span class=\"n\">ValidationError</span><span class=\"p\">(</span>\n            <span class=\"n\">_</span><span class=\"p\">(</span><span class=\"s1\">&#39;</span><span class=\"si\">%(value)s</span><span class=\"s1\"> is not an even number&#39;</span><span class=\"p\">),</span>\n            <span class=\"n\">params</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s1\">&#39;value&#39;</span><span class=\"p\">:</span> <span class=\"n\">value</span><span class=\"p\">},</span>\n        <span class=\"p\">)</span>\n</code></pre></div>\n<p>これはフィールドの <a class=\"reference internal\" href=\"/ja/3.1/ref/models/fields/#django.db.models.Field.validators\" title=\"django.db.models.Field.validators\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">validators</span></code></a> 属性を通じて設定することができます:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">models</span>\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyModel</span><span class=\"p\">(</span><span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">Model</span><span class=\"p\">):</span>\n    <span class=\"n\">even_field</span> <span class=\"o\">=</span> <span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">IntegerField</span><span class=\"p\">(</span><span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">validate_even</span><span class=\"p\">])</span>\n</code></pre></div>\n<p>値はバリデータ実行前に Python に変換されているため、フォームでも同じバリデータを使用することができます:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">forms</span>\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyForm</span><span class=\"p\">(</span><span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">Form</span><span class=\"p\">):</span>\n    <span class=\"n\">even_field</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">IntegerField</span><span class=\"p\">(</span><span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">validate_even</span><span class=\"p\">])</span>\n</code></pre></div>\n<p>より複雑なバリデータに対しては、クラスで <code class=\"docutils literal notranslate\"><span class=\"pre\">__call__()</span></code> メソッドを利用することもできます。<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> はその一例で、このテクニックを使っています。クラスベースのバリデータが <a class=\"reference internal\" href=\"/ja/3.1/ref/models/fields/#django.db.models.Field.validators\" title=\"django.db.models.Field.validators\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">validators</span></code></a> モデルフィールドのオプション内で使用されるときは、<a class=\"reference internal\" href=\"/ja/3.1/topics/migrations/#custom-deconstruct-method\"><span class=\"std std-ref\">deconstruct()</span></a> と <code class=\"docutils literal notranslate\"><span class=\"pre\">__eq__()</span></code>  メソッドを追加して <a class=\"reference internal\" href=\"/ja/3.1/topics/migrations/#migration-serializing\"><span class=\"std std-ref\">移行フレームワークによりシリアライズ可能</span></a> になるようにしてください。</p>\n</section>\n<section id=\"how-validators-are-run\">\n<h2>バリデータはどのように実行されるか<a class=\"heading-anchor\" href=\"#how-validators-are-run\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>バリデータが実行される方法については、フォーム上での実行は <a class=\"reference internal\" href=\"/ja/3.1/ref/forms/validation/\"><span class=\"doc\">フォームのバリデーション</span></a>、モデル上の実行は <a class=\"reference internal\" href=\"/ja/3.1/ref/models/instances/#validating-objects\"><span class=\"std std-ref\">オブジェクトを検証する</span></a> にそれぞれ詳細が記載されています。モデルを save してもバリデータは自動的には呼び出されませんが、<a class=\"reference internal\" href=\"/ja/3.1/topics/forms/modelforms/#django.forms.ModelForm\" title=\"django.forms.ModelForm\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelForm</span></code></a> を使用している場合にはフォームに含まれるすべてのフィールドでバリデータを実行することに注意してください。モデルのバリデーションがフォーム上でどのように動作するかについては、<a class=\"reference internal\" href=\"/ja/3.1/topics/forms/modelforms/\"><span class=\"doc\">ModelForm ドキュメント</span></a> を参照してください。</p>\n</section>\n<section id=\"built-in-validators\">\n<h2>ビルトインのバリデータ<a class=\"heading-anchor\" href=\"#built-in-validators\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p><a class=\"reference internal\" href=\"#module-django.core.validators\" title=\"django.core.validators: Validation utilities and base classes\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.core.validators</span></code></a> モジュールは、モデルやフォームで使用する呼び出し可能なバリデータの集まりを有しています。これらは内部で使用されますが、作成したフィールドで使用することもできます。 追加で使うことも、<code class=\"docutils literal notranslate\"><span class=\"pre\">field.clean()</span></code> メソッドの代わりに使うことも可能です。</p>\n<section id=\"regexvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code><a class=\"heading-anchor\" href=\"#regexvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">RegexValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">regex</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">inverse_match</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">flags</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">0</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><dl class=\"field-list simple\">\n<dt class=\"field-odd\">パラメータ<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>regex</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a> をオーバーライドします。正規表現の文字列か、コンパイル済みの正規表現を指定します。</p></li>\n<li><p><strong>message</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.message\" title=\"django.core.validators.RegexValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> をオーバーライドします。</p></li>\n<li><p><strong>code</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.code\" title=\"django.core.validators.RegexValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> をオーバーライドします。</p></li>\n<li><p><strong>inverse_match</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.inverse_match\" title=\"django.core.validators.RegexValidator.inverse_match\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">inverse_match</span></code></a> をオーバーライドする。</p></li>\n<li><p><strong>flags</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.flags\" title=\"django.core.validators.RegexValidator.flags\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">flags</span></code></a> をオーバーライドします。指定する場合、<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a> は正規表現の文字列にする必要があります。それ以外の場合は <a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#TypeError\" title=\"(in Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">TypeError</span></code></a> が発生します。</p></li>\n</ul>\n</dd>\n</dl>\n<p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> searches the provided <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> for a given\nregular expression with <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.search\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.search()</span></code></a>. By default, raises a\n<a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.message\" title=\"django.core.validators.RegexValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> and\n<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.code\" title=\"django.core.validators.RegexValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> if a match <strong>is not</strong> found. Its behavior can be inverted by\nsetting <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.inverse_match\" title=\"django.core.validators.RegexValidator.inverse_match\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">inverse_match</span></code></a> to <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, in which case the\n<a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> is raised when a match\n<strong>is</strong> found.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.regex\">\n<span class=\"sig-name descname\"><span class=\"pre\">regex</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.regex\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The regular expression pattern to search for within the provided\n<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code>, using <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.search\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.search()</span></code></a>. This may be a string or a\npre-compiled regular expression created with <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.compile\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.compile()</span></code></a>.\nDefaults to the empty string, which will be found in every possible\n<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.message\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>バリデーションが失敗した場合に <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> で使用されるエラーメッセージです。デフォルトは <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Enter</span> <span class=\"pre\">a</span> <span class=\"pre\">valid</span> <span class=\"pre\">value&quot;</span></code> です。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.code\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>バリデーションが失敗した場合に <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> で使用されるエラーコードです。デフォルトは <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;invalid&quot;</span></code> です。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.inverse_match\">\n<span class=\"sig-name descname\"><span class=\"pre\">inverse_match</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.inverse_match\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a> に対する match モードです。デフォルトは <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> です。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.flags\">\n<span class=\"sig-name descname\"><span class=\"pre\">flags</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.flags\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#contents-of-module-re\" title=\"(in Python v3.14)\"><span class=\"xref std std-ref\">regex flags</span></a> used when\ncompiling the regular expression string <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>. If <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>\nis a pre-compiled regular expression, and <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.flags\" title=\"django.core.validators.RegexValidator.flags\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">flags</span></code></a> is overridden,\n<a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#TypeError\" title=\"(in Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">TypeError</span></code></a> is raised. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">0</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"emailvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">EmailValidator</span></code><a class=\"heading-anchor\" href=\"#emailvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">EmailValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">whitelist</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><dl class=\"field-list simple\">\n<dt class=\"field-odd\">パラメータ<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>message</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.message\" title=\"django.core.validators.EmailValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> をオーバーライドします。</p></li>\n<li><p><strong>code</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.code\" title=\"django.core.validators.EmailValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> をオーバーライドします。</p></li>\n<li><p><strong>whitelist</strong> -- If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.whitelist\" title=\"django.core.validators.EmailValidator.whitelist\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">whitelist</span></code></a>.</p></li>\n</ul>\n</dd>\n</dl>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.message\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error message used by\n<a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if validation fails.\nDefaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Enter</span> <span class=\"pre\">a</span> <span class=\"pre\">valid</span> <span class=\"pre\">email</span> <span class=\"pre\">address&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.code\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>バリデーションが失敗した場合に <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> で使用されるエラーコードです。デフォルトは <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;invalid&quot;</span></code> です。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.whitelist\">\n<span class=\"sig-name descname\"><span class=\"pre\">whitelist</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.whitelist\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Whitelist of email domains to allow. By default, a regular expression\n(the <code class=\"docutils literal notranslate\"><span class=\"pre\">domain_regex</span></code> attribute) is used to validate whatever appears\nafter the &#64; sign. However, if that string appears in the whitelist, this\nvalidation is bypassed. If not provided, the default whitelist is\n<code class=\"docutils literal notranslate\"><span class=\"pre\">['localhost']</span></code>. Other domains that don't contain a dot won't pass\nvalidation, so you'd need to whitelist them as necessary.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"urlvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">URLValidator</span></code><a class=\"heading-anchor\" href=\"#urlvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.URLValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">URLValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">schemes</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">regex</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.URLValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> subclass that ensures a value looks like a URL,\nand raises an error code of <code class=\"docutils literal notranslate\"><span class=\"pre\">'invalid'</span></code> if it doesn't.</p>\n<p>Loopback addresses and reserved IP spaces are considered valid. Literal\nIPv6 addresses (<span class=\"target\" id=\"index-0\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc3986.html#section-3.2.2\"><strong>RFC 3986 Section 3.2.2</strong></a>) and Unicode domains are both\nsupported.</p>\n<p>In addition to the optional arguments of its parent <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a>\nclass, <code class=\"docutils literal notranslate\"><span class=\"pre\">URLValidator</span></code> accepts an extra optional attribute:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.URLValidator.schemes\">\n<span class=\"sig-name descname\"><span class=\"pre\">schemes</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.URLValidator.schemes\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>URL/URI scheme list to validate against. If not provided, the default\nlist is <code class=\"docutils literal notranslate\"><span class=\"pre\">['http',</span> <span class=\"pre\">'https',</span> <span class=\"pre\">'ftp',</span> <span class=\"pre\">'ftps']</span></code>. As a reference, the IANA\nwebsite provides a full list of <a class=\"reference external\" href=\"https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml\">valid URI schemes</a>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"validate-email\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_email</span></code><a class=\"heading-anchor\" href=\"#validate-email\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_email\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_email</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_email\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>An <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator\" title=\"django.core.validators.EmailValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">EmailValidator</span></code></a> instance without any customizations.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-slug\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_slug</span></code><a class=\"heading-anchor\" href=\"#validate-slug\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_slug\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_slug</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_slug\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value consists of only\nletters, numbers, underscores or hyphens.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-unicode-slug\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_unicode_slug</span></code><a class=\"heading-anchor\" href=\"#validate-unicode-slug\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_unicode_slug\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_unicode_slug</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_unicode_slug\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value consists of only\nUnicode letters, numbers, underscores, or hyphens.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv4-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv4_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv4-address\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv4_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv4_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv4_address\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value looks like an IPv4\naddress.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv6-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv6_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv6-address\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv6_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv6_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv6_address\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.ipv6</span></code> to check the validity of an IPv6 address.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv46-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv46_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv46-address\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv46_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv46_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv46_address\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses both <code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv4_address</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv6_address</span></code> to\nensure a value is either a valid IPv4 or IPv6 address.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-comma-separated-integer-list\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_comma_separated_integer_list</span></code><a class=\"heading-anchor\" href=\"#validate-comma-separated-integer-list\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_comma_separated_integer_list\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_comma_separated_integer_list</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_comma_separated_integer_list\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value is a\ncomma-separated list of integers.</p>\n</dd></dl>\n\n</section>\n<section id=\"int-list-validator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">int_list_validator</span></code><a class=\"heading-anchor\" href=\"#int-list-validator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.int_list_validator\">\n<span class=\"sig-name descname\"><span class=\"pre\">int_list_validator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">sep</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">','</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'invalid'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allow_negative</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.int_list_validator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returns a <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a string consists\nof integers separated by <code class=\"docutils literal notranslate\"><span class=\"pre\">sep</span></code>. It allows negative integers when\n<code class=\"docutils literal notranslate\"><span class=\"pre\">allow_negative</span></code> is <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"maxvaluevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MaxValueValidator</span></code><a class=\"heading-anchor\" href=\"#maxvaluevalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MaxValueValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MaxValueValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MaxValueValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'max_value'</span></code> if <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is greater than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be\na callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"minvaluevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MinValueValidator</span></code><a class=\"heading-anchor\" href=\"#minvaluevalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MinValueValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MinValueValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MinValueValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'min_value'</span></code> if <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is less than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be a\ncallable.</p>\n</dd></dl>\n\n</section>\n<section id=\"maxlengthvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MaxLengthValidator</span></code><a class=\"heading-anchor\" href=\"#maxlengthvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MaxLengthValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MaxLengthValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MaxLengthValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'max_length'</span></code> if the length of <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is greater than\n<code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be a callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"minlengthvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MinLengthValidator</span></code><a class=\"heading-anchor\" href=\"#minlengthvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MinLengthValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MinLengthValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MinLengthValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'min_length'</span></code> if the length of <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is less than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>,\nwhich may be a callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"decimalvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DecimalValidator</span></code><a class=\"heading-anchor\" href=\"#decimalvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.DecimalValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">DecimalValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">max_digits</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">decimal_places</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.DecimalValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with the following\ncodes:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_digits'</span></code> if the number of digits is larger than <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_decimal_places'</span></code> if the number of decimals is larger than\n<code class=\"docutils literal notranslate\"><span class=\"pre\">decimal_places</span></code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_whole_digits'</span></code> if the number of whole digits is larger than\nthe difference between <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">decimal_places</span></code>.</p></li>\n</ul>\n</dd></dl>\n\n</section>\n<section id=\"fileextensionvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">FileExtensionValidator</span></code><a class=\"heading-anchor\" href=\"#fileextensionvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.FileExtensionValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">FileExtensionValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allowed_extensions</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.FileExtensionValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'invalid_extension'</span></code> if the extension of <code class=\"docutils literal notranslate\"><span class=\"pre\">value.name</span></code> (<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is\na <a class=\"reference internal\" href=\"/ja/3.1/ref/files/file/#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>) isn't found in <code class=\"docutils literal notranslate\"><span class=\"pre\">allowed_extensions</span></code>.\nThe extension is compared case-insensitively with <code class=\"docutils literal notranslate\"><span class=\"pre\">allowed_extensions</span></code>.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">警告</p>\n<p>Don't rely on validation of the file extension to determine a file's\ntype. Files can be renamed to have any extension no matter what data\nthey contain.</p>\n</aside>\n</dd></dl>\n\n</section>\n<section id=\"validate-image-file-extension\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_image_file_extension</span></code><a class=\"heading-anchor\" href=\"#validate-image-file-extension\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_image_file_extension\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_image_file_extension</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_image_file_extension\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses Pillow to ensure that <code class=\"docutils literal notranslate\"><span class=\"pre\">value.name</span></code> (<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is a\n<a class=\"reference internal\" href=\"/ja/3.1/ref/files/file/#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>) has <a class=\"reference external\" href=\"https://pillow.readthedocs.io/en/latest/handbook/image-file-formats.html\">a valid image extension</a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"prohibitnullcharactersvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ProhibitNullCharactersValidator</span></code><a class=\"heading-anchor\" href=\"#prohibitnullcharactersvalidator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">ProhibitNullCharactersValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if <code class=\"docutils literal notranslate\"><span class=\"pre\">str(value)</span></code>\ncontains one or more nulls characters (<code class=\"docutils literal notranslate\"><span class=\"pre\">'\\x00'</span></code>).</p>\n<dl class=\"field-list simple\">\n<dt class=\"field-odd\">パラメータ<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>message</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.ProhibitNullCharactersValidator.message\" title=\"django.core.validators.ProhibitNullCharactersValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> をオーバーライドします。</p></li>\n<li><p><strong>code</strong> -- <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> 以外の場合、<a class=\"reference internal\" href=\"#django.core.validators.ProhibitNullCharactersValidator.code\" title=\"django.core.validators.ProhibitNullCharactersValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> をオーバーライドします。</p></li>\n</ul>\n</dd>\n</dl>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator.message\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error message used by\n<a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if validation fails.\nDefaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Null</span> <span class=\"pre\">characters</span> <span class=\"pre\">are</span> <span class=\"pre\">not</span> <span class=\"pre\">allowed.&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator.code\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error code used by <a class=\"reference internal\" href=\"/ja/3.1/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a>\nif validation fails. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;null_characters_not_allowed&quot;</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n</section>","rootId":"module-django.core.validators","toc":[{"title":"バリデータを記述する","anchor":"writing-validators","children":[]},{"title":"バリデータはどのように実行されるか","anchor":"how-validators-are-run","children":[]},{"title":"ビルトインのバリデータ","anchor":"built-in-validators","children":[{"title":"RegexValidator","anchor":"regexvalidator","children":[]},{"title":"EmailValidator","anchor":"emailvalidator","children":[]},{"title":"URLValidator","anchor":"urlvalidator","children":[]},{"title":"validate_email","anchor":"validate-email","children":[]},{"title":"validate_slug","anchor":"validate-slug","children":[]},{"title":"validate_unicode_slug","anchor":"validate-unicode-slug","children":[]},{"title":"validate_ipv4_address","anchor":"validate-ipv4-address","children":[]},{"title":"validate_ipv6_address","anchor":"validate-ipv6-address","children":[]},{"title":"validate_ipv46_address","anchor":"validate-ipv46-address","children":[]},{"title":"validate_comma_separated_integer_list","anchor":"validate-comma-separated-integer-list","children":[]},{"title":"int_list_validator","anchor":"int-list-validator","children":[]},{"title":"MaxValueValidator","anchor":"maxvaluevalidator","children":[]},{"title":"MinValueValidator","anchor":"minvaluevalidator","children":[]},{"title":"MaxLengthValidator","anchor":"maxlengthvalidator","children":[]},{"title":"MinLengthValidator","anchor":"minlengthvalidator","children":[]},{"title":"DecimalValidator","anchor":"decimalvalidator","children":[]},{"title":"FileExtensionValidator","anchor":"fileextensionvalidator","children":[]},{"title":"validate_image_file_extension","anchor":"validate-image-file-extension","children":[]},{"title":"ProhibitNullCharactersValidator","anchor":"prohibitnullcharactersvalidator","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"API Reference","url":"/ja/3.1/ref/"}],"prev":{"docname":"ref/utils","title":"Django Utils","url":"/ja/3.1/ref/utils/"},"next":{"docname":"ref/views","title":"Built-in Views","url":"/ja/3.1/ref/views/"},"formats":{"html":"/ja/3.1/ref/validators/","markdown":"/ja/3.1/ref/validators.md","json":"/ja/3.1/ref/validators.json"},"source":"https://github.com/django/django/blob/stable/3.1.x/docs/ref/validators.txt","official":"https://docs.djangoproject.com/ja/3.1/ref/validators/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","zh-hans","fr","ja","id","pt-br","ko","es","el","pl"]}