{"title":"Bidang formulir","version":"2.2","locale":"id","docname":"ref/forms/fields","url":"/id/2.2/ref/forms/fields/","canonical":"https://djangodocs.dev/id/2.2/ref/forms/fields/","summary":"class Field ( ** kwargs ) Link to this definition # When you create a Form class, the most important part is defining the fields of the form. Each field has custom…","html":"<span id=\"form-fields\"></span><h1>Bidang formulir<a class=\"heading-anchor\" href=\"#module-django.forms.fields\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field\">\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\">Field</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.Field\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>When you create a <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code> class, the most important part is defining the\nfields of the form. Each field has custom validation logic, along with a few\nother hooks.</p>\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.clean\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">clean</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.Field.clean\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Although the primary way you'll use <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> classes is in <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code> classes,\nyou can also instantiate them and use them directly to get a better idea of\nhow they work. Each <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> instance has a <code class=\"docutils literal notranslate\"><span class=\"pre\">clean()</span></code> method, which takes\na single argument and either raises a <code class=\"docutils literal notranslate\"><span class=\"pre\">django.forms.ValidationError</span></code>\nexception or returns the clean value:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">EmailField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;foo@example.com&#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;foo@example.com&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;invalid email address&#39;</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;Enter a valid email address.&#39;]</span>\n</code></pre></div>\n<section id=\"core-field-arguments\">\n<span id=\"id1\"></span><h2>Argumen bidang inti<a class=\"heading-anchor\" href=\"#core-field-arguments\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Each <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> class constructor takes at least these arguments. Some\n<code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> classes take additional, field-specific arguments, but the following\nshould <em>always</em> be accepted:</p>\n<section id=\"required\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code><a class=\"heading-anchor\" href=\"#required\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.required\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">required</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.required\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>By default, each <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> class assumes the value is required, so if you pass\nan empty value -- either <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> or the empty string (<code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;&quot;</span></code>) -- then\n<code class=\"docutils literal notranslate\"><span class=\"pre\">clean()</span></code> will raise a <code class=\"docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code> exception:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;foo&#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;foo&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;&#39;</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;This field is required.&#39;]</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">None</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;This field is required.&#39;]</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39; &#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39; &#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"mi\">0</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;0&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;True&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;False&#39;</span>\n</code></pre></div>\n<p>Untuk menentukan bahwa bidang adalah <em>tidak</em> diwajibkan, lewatkan <code class=\"docutils literal notranslate\"><span class=\"pre\">required=False</span></code> ke pembangun <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code>:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">required</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;foo&#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;foo&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;&#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">None</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"mi\">0</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;0&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;True&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;False&#39;</span>\n</code></pre></div>\n<p>If a <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> has <code class=\"docutils literal notranslate\"><span class=\"pre\">required=False</span></code> and you pass <code class=\"docutils literal notranslate\"><span class=\"pre\">clean()</span></code> an empty value,\nthen <code class=\"docutils literal notranslate\"><span class=\"pre\">clean()</span></code> will return a <em>normalized</em> empty value rather than raising\n<code class=\"docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code>. For <code class=\"docutils literal notranslate\"><span class=\"pre\">CharField</span></code>, this will be an empty string. For other\n<code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> classes, it might be <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>. (This varies from field to field.)</p>\n<p>Widgets of required form fields have the <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code> HTML attribute. Set the\n<a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#django.forms.Form.use_required_attribute\" title=\"django.forms.Form.use_required_attribute\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Form.use_required_attribute</span></code></a> attribute to <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> to disable it. The\n<code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code> attribute isn't included on forms of formsets because the browser\nvalidation may not be correct when adding and deleting formsets.</p>\n</section>\n<section id=\"label\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">label</span></code><a class=\"heading-anchor\" href=\"#label\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.label\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">label</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.label\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">label</span></code> membuat anda menentukan label &quot;human-friendly&quot; untuk bidang ini. Ini digunakan ketika <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> ditampilkan dalam sebuah <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code>.</p>\n<p>As explained in &quot;Outputting forms as HTML&quot; above, the default label for a\n<code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> is generated from the field name by converting all underscores to\nspaces and upper-casing the first letter. Specify <code class=\"docutils literal notranslate\"><span class=\"pre\">label</span></code> if that default\nbehavior doesn't result in an adequate label.</p>\n<p>Ini adalah contoh lengkap <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code> yang menerapkan <code class=\"docutils literal notranslate\"><span class=\"pre\">label</span></code> untuk dua dari bidangnya. Kami telah menentukan <code class=\"docutils literal notranslate\"><span class=\"pre\">auto_id=False</span></code> untuk menyederhanakan keluaran:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">CommentForm</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=\"gp\">... </span>    <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">label</span><span class=\"o\">=</span><span class=\"s1\">&#39;Your name&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">url</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">URLField</span><span class=\"p\">(</span><span class=\"n\">label</span><span class=\"o\">=</span><span class=\"s1\">&#39;Your website&#39;</span><span class=\"p\">,</span> <span class=\"n\">required</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">comment</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">CommentForm</span><span class=\"p\">(</span><span class=\"n\">auto_id</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"p\">)</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Your name:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;name&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Your website:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;url&quot; name=&quot;url&quot;&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Comment:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;comment&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n</code></pre></div>\n</section>\n<section id=\"label-suffix\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">label_suffix</span></code><a class=\"heading-anchor\" href=\"#label-suffix\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.label_suffix\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">label_suffix</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.label_suffix\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">label_suffix</span></code> membuat anda menimpa <a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#django.forms.Form.label_suffix\" title=\"django.forms.Form.label_suffix\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">label_suffix</span></code></a> formulir pada dasar per-bidang:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">ContactForm</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=\"gp\">... </span>    <span class=\"n\">age</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">IntegerField</span><span class=\"p\">()</span>\n<span class=\"gp\">... </span>    <span class=\"n\">nationality</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">... </span>    <span class=\"n\">captcha_answer</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\">label</span><span class=\"o\">=</span><span class=\"s1\">&#39;2 + 2&#39;</span><span class=\"p\">,</span> <span class=\"n\">label_suffix</span><span class=\"o\">=</span><span class=\"s1\">&#39; =&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">ContactForm</span><span class=\"p\">(</span><span class=\"n\">label_suffix</span><span class=\"o\">=</span><span class=\"s1\">&#39;?&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">as_p</span><span class=\"p\">())</span>\n<span class=\"go\">&lt;p&gt;&lt;label for=&quot;id_age&quot;&gt;Age?&lt;/label&gt; &lt;input id=&quot;id_age&quot; name=&quot;age&quot; type=&quot;number&quot; required&gt;&lt;/p&gt;</span>\n<span class=\"go\">&lt;p&gt;&lt;label for=&quot;id_nationality&quot;&gt;Nationality?&lt;/label&gt; &lt;input id=&quot;id_nationality&quot; name=&quot;nationality&quot; type=&quot;text&quot; required&gt;&lt;/p&gt;</span>\n<span class=\"go\">&lt;p&gt;&lt;label for=&quot;id_captcha_answer&quot;&gt;2 + 2 =&lt;/label&gt; &lt;input id=&quot;id_captcha_answer&quot; name=&quot;captcha_answer&quot; type=&quot;number&quot; required&gt;&lt;/p&gt;</span>\n</code></pre></div>\n</section>\n<section id=\"initial\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code><a class=\"heading-anchor\" href=\"#initial\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.initial\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">initial</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.initial\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code> argument lets you specify the initial value to use when\nrendering this <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> in an unbound <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code>.</p>\n<p>Untuk menentukan data awal dinamis, lihat parameter <a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#django.forms.Form.initial\" title=\"django.forms.Form.initial\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Form.initial</span></code></a>.</p>\n<p>The use-case for this is when you want to display an &quot;empty&quot; form in which a\nfield is initialized to a particular value. For example:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">CommentForm</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=\"gp\">... </span>    <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">initial</span><span class=\"o\">=</span><span class=\"s1\">&#39;Your name&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">url</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">URLField</span><span class=\"p\">(</span><span class=\"n\">initial</span><span class=\"o\">=</span><span class=\"s1\">&#39;http://&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">comment</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">CommentForm</span><span class=\"p\">(</span><span class=\"n\">auto_id</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"p\">)</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Name:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;name&quot; value=&quot;Your name&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Url:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;url&quot; name=&quot;url&quot; value=&quot;http://&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Comment:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;comment&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n</code></pre></div>\n<p>You may be thinking, why not just pass a dictionary of the initial values as\ndata when displaying the form? Well, if you do that, you'll trigger validation,\nand the HTML output will include any validation errors:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">CommentForm</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=\"gp\">... </span>    <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">... </span>    <span class=\"n\">url</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">URLField</span><span class=\"p\">()</span>\n<span class=\"gp\">... </span>    <span class=\"n\">comment</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">default_data</span> <span class=\"o\">=</span> <span class=\"p\">{</span><span class=\"s1\">&#39;name&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Your name&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;url&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;http://&#39;</span><span class=\"p\">}</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">CommentForm</span><span class=\"p\">(</span><span class=\"n\">default_data</span><span class=\"p\">,</span> <span class=\"n\">auto_id</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"p\">)</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Name:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;name&quot; value=&quot;Your name&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Url:&lt;/th&gt;&lt;td&gt;&lt;ul class=&quot;errorlist&quot;&gt;&lt;li&gt;Enter a valid URL.&lt;/li&gt;&lt;/ul&gt;&lt;input type=&quot;url&quot; name=&quot;url&quot; value=&quot;http://&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Comment:&lt;/th&gt;&lt;td&gt;&lt;ul class=&quot;errorlist&quot;&gt;&lt;li&gt;This field is required.&lt;/li&gt;&lt;/ul&gt;&lt;input type=&quot;text&quot; name=&quot;comment&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n</code></pre></div>\n<p>This is why <code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code> values are only displayed for unbound forms. For bound\nforms, the HTML output will use the bound data.</p>\n<p>Also note that <code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code> values are <em>not</em> used as &quot;fallback&quot; data in\nvalidation if a particular field's value is not given. <code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code> values are\n<em>only</em> intended for initial form display:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">CommentForm</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=\"gp\">... </span>    <span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">initial</span><span class=\"o\">=</span><span class=\"s1\">&#39;Your name&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">url</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">URLField</span><span class=\"p\">(</span><span class=\"n\">initial</span><span class=\"o\">=</span><span class=\"s1\">&#39;http://&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">comment</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">data</span> <span class=\"o\">=</span> <span class=\"p\">{</span><span class=\"s1\">&#39;name&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;url&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;comment&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Foo&#39;</span><span class=\"p\">}</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">CommentForm</span><span class=\"p\">(</span><span class=\"n\">data</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">is_valid</span><span class=\"p\">()</span>\n<span class=\"go\">False</span>\n<span class=\"go\"># The form does *not* fall back to using the initial values.</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">errors</span>\n<span class=\"go\">{&#39;url&#39;: [&#39;This field is required.&#39;], &#39;name&#39;: [&#39;This field is required.&#39;]}</span>\n</code></pre></div>\n<p>Instead of a constant, you can also pass any callable:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">import</span><span class=\"w\"> </span><span class=\"nn\">datetime</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">DateForm</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=\"gp\">... </span>    <span class=\"n\">day</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">DateField</span><span class=\"p\">(</span><span class=\"n\">initial</span><span class=\"o\">=</span><span class=\"n\">datetime</span><span class=\"o\">.</span><span class=\"n\">date</span><span class=\"o\">.</span><span class=\"n\">today</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">DateForm</span><span class=\"p\">())</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Day:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;day&quot; value=&quot;12/23/2008&quot; required&gt;&lt;td&gt;&lt;/tr&gt;</span>\n</code></pre></div>\n<p>The callable will be evaluated only when the unbound form is displayed, not when it is defined.</p>\n</section>\n<section id=\"widget\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">widget</span></code><a class=\"heading-anchor\" href=\"#widget\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.widget\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">widget</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.widget\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">widget</span></code> argument lets you specify a <code class=\"docutils literal notranslate\"><span class=\"pre\">Widget</span></code> class to use when\nrendering this <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code>. See <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/\"><span class=\"doc\">Widget</span></a> for more information.</p>\n</section>\n<section id=\"help-text\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">help_text</span></code><a class=\"heading-anchor\" href=\"#help-text\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.help_text\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">help_text</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.help_text\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">help_text</span></code> membiarkan anda menentukan gambaran teks untuk <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> ini. Jika anda menyediakan <code class=\"docutils literal notranslate\"><span class=\"pre\">help_text</span></code>, itu akan ditampilkan dekat <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> ketika <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> dibangun oleh satu dari metode <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code> yang nyaman (misalnya, <code class=\"docutils literal notranslate\"><span class=\"pre\">as_ul()</span></code>).</p>\n<p>Like the model field's <a class=\"reference internal\" href=\"/id/2.2/ref/models/fields/#django.db.models.Field.help_text\" title=\"django.db.models.Field.help_text\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">help_text</span></code></a>, this value\nisn't HTML-escaped in automatically-generated forms.</p>\n<p>Here's a full example <code class=\"docutils literal notranslate\"><span class=\"pre\">Form</span></code> that implements <code class=\"docutils literal notranslate\"><span class=\"pre\">help_text</span></code> for two of its\nfields. We've specified <code class=\"docutils literal notranslate\"><span class=\"pre\">auto_id=False</span></code> to simplify the output:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">HelpTextContactForm</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=\"gp\">... </span>    <span class=\"n\">subject</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">max_length</span><span class=\"o\">=</span><span class=\"mi\">100</span><span class=\"p\">,</span> <span class=\"n\">help_text</span><span class=\"o\">=</span><span class=\"s1\">&#39;100 characters max.&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">message</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">... </span>    <span class=\"n\">sender</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">EmailField</span><span class=\"p\">(</span><span class=\"n\">help_text</span><span class=\"o\">=</span><span class=\"s1\">&#39;A valid email address, please.&#39;</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span>    <span class=\"n\">cc_myself</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">BooleanField</span><span class=\"p\">(</span><span class=\"n\">required</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">HelpTextContactForm</span><span class=\"p\">(</span><span class=\"n\">auto_id</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">as_table</span><span class=\"p\">())</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Subject:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;subject&quot; maxlength=&quot;100&quot; required&gt;&lt;br&gt;&lt;span class=&quot;helptext&quot;&gt;100 characters max.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Message:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;message&quot; required&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Sender:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;email&quot; name=&quot;sender&quot; required&gt;&lt;br&gt;A valid email address, please.&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"go\">&lt;tr&gt;&lt;th&gt;Cc myself:&lt;/th&gt;&lt;td&gt;&lt;input type=&quot;checkbox&quot; name=&quot;cc_myself&quot;&gt;&lt;/td&gt;&lt;/tr&gt;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">as_ul</span><span class=\"p\">()))</span>\n<span class=\"go\">&lt;li&gt;Subject: &lt;input type=&quot;text&quot; name=&quot;subject&quot; maxlength=&quot;100&quot; required&gt; &lt;span class=&quot;helptext&quot;&gt;100 characters max.&lt;/span&gt;&lt;/li&gt;</span>\n<span class=\"go\">&lt;li&gt;Message: &lt;input type=&quot;text&quot; name=&quot;message&quot; required&gt;&lt;/li&gt;</span>\n<span class=\"go\">&lt;li&gt;Sender: &lt;input type=&quot;email&quot; name=&quot;sender&quot; required&gt; A valid email address, please.&lt;/li&gt;</span>\n<span class=\"go\">&lt;li&gt;Cc myself: &lt;input type=&quot;checkbox&quot; name=&quot;cc_myself&quot;&gt;&lt;/li&gt;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">as_p</span><span class=\"p\">())</span>\n<span class=\"go\">&lt;p&gt;Subject: &lt;input type=&quot;text&quot; name=&quot;subject&quot; maxlength=&quot;100&quot; required&gt; &lt;span class=&quot;helptext&quot;&gt;100 characters max.&lt;/span&gt;&lt;/p&gt;</span>\n<span class=\"go\">&lt;p&gt;Message: &lt;input type=&quot;text&quot; name=&quot;message&quot; required&gt;&lt;/p&gt;</span>\n<span class=\"go\">&lt;p&gt;Sender: &lt;input type=&quot;email&quot; name=&quot;sender&quot; required&gt; A valid email address, please.&lt;/p&gt;</span>\n<span class=\"go\">&lt;p&gt;Cc myself: &lt;input type=&quot;checkbox&quot; name=&quot;cc_myself&quot;&gt;&lt;/p&gt;</span>\n</code></pre></div>\n</section>\n<section id=\"error-messages\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">error_messages</span></code><a class=\"heading-anchor\" href=\"#error-messages\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.error_messages\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">error_messages</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.error_messages\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">error_messages</span></code> argument lets you override the default messages that the\nfield will raise. Pass in a dictionary with keys matching the error messages you\nwant to override. For example, here is the default error message:</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=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">generic</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">generic</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;&#39;</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"w\">  </span><span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;This field is required.&#39;]</span>\n</code></pre></div>\n<p>Dan ini adalah pesan kesalahan penyesuaian:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">name</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">error_messages</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s1\">&#39;required&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Please enter your name&#39;</span><span class=\"p\">})</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">name</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;&#39;</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"w\">  </span><span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;Please enter your name&#39;]</span>\n</code></pre></div>\n<p>Dalam bagian <a class=\"reference internal\" href=\"#built-in-field-classes\">built-in Field classes</a> dibawah ini, setiap <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> menentukan kunci-kunci pesan kesalahan itu gunakan.</p>\n</section>\n<section id=\"validators\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validators</span></code><a class=\"heading-anchor\" href=\"#validators\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.validators\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">validators</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.validators\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">validators</span></code> membiarkan anda menyediakan daftar dari fungsi pengecekan untuk bidang ini.</p>\n<p>Lihat <a class=\"reference internal\" href=\"/id/2.2/ref/validators/\"><span class=\"doc\">validators documentation</span></a> untuk informasi lebih.</p>\n</section>\n<section id=\"localize\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">localize</span></code><a class=\"heading-anchor\" href=\"#localize\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.localize\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">localize</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.localize\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">localize</span></code> mengadakan lokalisasi dari formulir masukan data, sama halnyakeluaran dibangun.</p>\n<p>Lihat dokuemntasi <a class=\"reference internal\" href=\"/id/2.2/topics/i18n/formatting/\"><span class=\"doc\">format localization</span></a> untuk informasi lebih.</p>\n</section>\n<section id=\"disabled\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">disabled</span></code><a class=\"heading-anchor\" href=\"#disabled\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.disabled\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">disabled</span></span><a class=\"heading-anchor\" href=\"#django.forms.Field.disabled\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">disabled</span></code> boolean argument, when set to <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, disables a form field\nusing the <code class=\"docutils literal notranslate\"><span class=\"pre\">disabled</span></code> HTML attribute so that it won't be editable by users.\nEven if a user tampers with the field's value submitted to the server, it will\nbe ignored in favor of the value from the form's initial data.</p>\n</section>\n</section>\n<section id=\"checking-if-the-field-data-has-changed\">\n<h2>Memeriksa jika data bidang telah berubah<a class=\"heading-anchor\" href=\"#checking-if-the-field-data-has-changed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<section id=\"has-changed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">has_changed()</span></code><a class=\"heading-anchor\" href=\"#has-changed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.forms.Field.has_changed\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">has_changed</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.Field.has_changed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">has_changed()</span></code> method is used to determine if the field value has changed\nfrom the initial value. Returns <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p>\n<p>Lihat dokumentasi <a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#django.forms.Form.has_changed\" title=\"django.forms.Form.has_changed\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Form.has_changed()</span></code></a> untuk informasi lebih.</p>\n</section>\n</section>\n<section id=\"built-in-field-classes\">\n<span id=\"built-in-fields\"></span><h2>KelaS-kelas <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> siap-pakai<a class=\"heading-anchor\" href=\"#built-in-field-classes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Naturally, the <code class=\"docutils literal notranslate\"><span class=\"pre\">forms</span></code> library comes with a set of <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> classes that\nrepresent common validation needs. This section documents each built-in field.</p>\n<p>For each field, we describe the default widget used if you don't specify\n<code class=\"docutils literal notranslate\"><span class=\"pre\">widget</span></code>. We also specify the value returned when you provide an empty value\n(see the section on <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code> above to understand what that means).</p>\n<section id=\"booleanfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">BooleanField</span></code><a class=\"heading-anchor\" href=\"#booleanfield\"><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.forms.BooleanField\">\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\">BooleanField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.BooleanField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.CheckboxInput\" title=\"django.forms.CheckboxInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">CheckboxInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code></p></li>\n<li><p>Dinormalkan pada: Nilai Python <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> atau <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p></li>\n<li><p>Mensahkan bahwa nilai adalah <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (misalnya kotak centang dicentang) jika bidang mempunyai <code class=\"docutils literal notranslate\"><span class=\"pre\">required=True</span></code>.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code></p></li>\n</ul>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Catatan</p>\n<p>Since all <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> subclasses have <code class=\"docutils literal notranslate\"><span class=\"pre\">required=True</span></code> by default, the\nvalidation condition here is important. If you want to include a boolean\nin your form that can be either <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> (e.g. a checked or\nunchecked checkbox), you must remember to pass in <code class=\"docutils literal notranslate\"><span class=\"pre\">required=False</span></code> when\ncreating the <code class=\"docutils literal notranslate\"><span class=\"pre\">BooleanField</span></code>.</p>\n</aside>\n</dd></dl>\n\n</section>\n<section id=\"charfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">CharField</span></code><a class=\"heading-anchor\" href=\"#charfield\"><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.forms.CharField\">\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\">CharField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.CharField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: Apapun anda telah berikan sebagai <a class=\"reference internal\" href=\"#django.forms.CharField.empty_value\" title=\"django.forms.CharField.empty_value\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">empty_value</span></code></a>.</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Menggunakan <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MaxLengthValidator\" title=\"django.core.validators.MaxLengthValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MaxLengthValidator</span></code></a> dan <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MinLengthValidator\" title=\"django.core.validators.MinLengthValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MinLengthValidator</span></code></a> jika <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">min_length</span></code> disediakan. Sebaliknya, semua masukan adalah sah.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">min_length</span></code></p></li>\n</ul>\n<p>Mempunyai tiga argumen pilihan untuk pengesahan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.CharField.max_length\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_length</span></span><a class=\"heading-anchor\" href=\"#django.forms.CharField.max_length\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.CharField.min_length\">\n<span class=\"sig-name descname\"><span class=\"pre\">min_length</span></span><a class=\"heading-anchor\" href=\"#django.forms.CharField.min_length\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>If provided, these arguments ensure that the string is at most or at least\nthe given length.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.CharField.strip\">\n<span class=\"sig-name descname\"><span class=\"pre\">strip</span></span><a class=\"heading-anchor\" href=\"#django.forms.CharField.strip\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Jika <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (awalan), nilai akan dilucuti dari terkemuka dan buntutan ruang kosong.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.CharField.empty_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">empty_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.CharField.empty_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>NIlai digunakan untuk mewakilkan &quot;empty&quot;. Awalan pada string kosong.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"choicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ChoiceField</span></code><a class=\"heading-anchor\" href=\"#choicefield\"><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.forms.ChoiceField\">\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\">ChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.ChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.Select\" title=\"django.forms.Select\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Select</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Mensahkan yaitu nilai yang diberikan ada dalam daftar pilihan.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code></p></li>\n</ul>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code> error message may contain <code class=\"docutils literal notranslate\"><span class=\"pre\">%(value)s</span></code>, which will be\nreplaced with the selected choice.</p>\n<p>Mengambil satu argumen tambahan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ChoiceField.choices\">\n<span class=\"sig-name descname\"><span class=\"pre\">choices</span></span><a class=\"heading-anchor\" href=\"#django.forms.ChoiceField.choices\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Either an <a class=\"reference external\" href=\"https://docs.python.org/3/glossary.html#term-iterable\" title=\"(di Python v3.14)\"><span class=\"xref std std-term\">iterable</span></a> of 2-tuples to use as choices for this\nfield, or a callable that returns such an iterable. This argument\naccepts the same formats as the <code class=\"docutils literal notranslate\"><span class=\"pre\">choices</span></code> argument to a model field.\nSee the <a class=\"reference internal\" href=\"/id/2.2/ref/models/fields/#field-choices\"><span class=\"std std-ref\">model field reference documentation on choices</span></a> for more details. If the argument is a callable, it is\nevaluated each time the field's form is initialized. Defaults to an\nempty list.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"typedchoicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">TypedChoiceField</span></code><a class=\"heading-anchor\" href=\"#typedchoicefield\"><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.forms.TypedChoiceField\">\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\">TypedChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.TypedChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Just like a <a class=\"reference internal\" href=\"#django.forms.ChoiceField\" title=\"django.forms.ChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ChoiceField</span></code></a>, except <a class=\"reference internal\" href=\"#django.forms.TypedChoiceField\" title=\"django.forms.TypedChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TypedChoiceField</span></code></a> takes two\nextra arguments, <a class=\"reference internal\" href=\"#django.forms.TypedChoiceField.coerce\" title=\"django.forms.TypedChoiceField.coerce\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">coerce</span></code></a> and <a class=\"reference internal\" href=\"#django.forms.TypedChoiceField.empty_value\" title=\"django.forms.TypedChoiceField.empty_value\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">empty_value</span></code></a>.</p>\n<ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.Select\" title=\"django.forms.Select\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Select</span></code></a></p></li>\n<li><p>Nilai kosong: Apapun anda telah berikan sebagai <a class=\"reference internal\" href=\"#django.forms.TypedChoiceField.empty_value\" title=\"django.forms.TypedChoiceField.empty_value\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">empty_value</span></code></a>.</p></li>\n<li><p>Normalizes to: A value of the type provided by the <a class=\"reference internal\" href=\"#django.forms.TypedChoiceField.coerce\" title=\"django.forms.TypedChoiceField.coerce\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">coerce</span></code></a>\nargument.</p></li>\n<li><p>Mensahkan yang nilai diberikan yang ada dalam daftar pilihan dan dapat dipaksakan.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code></p></li>\n</ul>\n<p>Mengambil argumen tambahan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.TypedChoiceField.coerce\">\n<span class=\"sig-name descname\"><span class=\"pre\">coerce</span></span><a class=\"heading-anchor\" href=\"#django.forms.TypedChoiceField.coerce\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A function that takes one argument and returns a coerced value. Examples\ninclude the built-in <code class=\"docutils literal notranslate\"><span class=\"pre\">int</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">float</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">bool</span></code> and other types. Defaults\nto an identity function. Note that coercion happens after input\nvalidation, so it is possible to coerce to a value not present in\n<code class=\"docutils literal notranslate\"><span class=\"pre\">choices</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.TypedChoiceField.empty_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">empty_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.TypedChoiceField.empty_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The value to use to represent &quot;empty.&quot; Defaults to the empty string;\n<code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> is another common choice here. Note that this value will not be\ncoerced by the function given in the <code class=\"docutils literal notranslate\"><span class=\"pre\">coerce</span></code> argument, so choose it\naccordingly.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"datefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DateField</span></code><a class=\"heading-anchor\" href=\"#datefield\"><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.forms.DateField\">\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\">DateField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.DateField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.DateInput\" title=\"django.forms.DateInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">DateInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code> Python.</p></li>\n<li><p>Validates that the given value is either a <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code>,\n<code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code> or string formatted in a particular date format.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil satu argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DateField.input_formats\">\n<span class=\"sig-name descname\"><span class=\"pre\">input_formats</span></span><a class=\"heading-anchor\" href=\"#django.forms.DateField.input_formats\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sebuah daftar dari bentuk untuk berusaha merubah sebuah string menjadi obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code> sah.</p>\n</dd></dl>\n\n<p>Jika tidak ada argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">input_formats</span></code> disediakan, bentuk masukan awalan adalah:</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=\"p\">[</span><span class=\"s1\">&#39;%Y-%m-</span><span class=\"si\">%d</span><span class=\"s1\">&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;2006-10-25&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%Y&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;10/25/2006&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%y&#39;</span><span class=\"p\">]</span>      <span class=\"c1\"># &#39;10/25/06&#39;</span>\n</code></pre></div>\n<p>Additionally, if you specify <a class=\"reference internal\" href=\"/id/2.2/ref/settings/#std-setting-USE_L10N\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">USE_L10N=False</span></code></a> in your settings, the\nfollowing will also be included in the default input formats:</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=\"p\">[</span><span class=\"s1\">&#39;%b </span><span class=\"si\">%d</span><span class=\"s1\"> %Y&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;Oct 25 2006&#39;</span>\n <span class=\"s1\">&#39;%b </span><span class=\"si\">%d</span><span class=\"s1\">, %Y&#39;</span><span class=\"p\">,</span>     <span class=\"c1\"># &#39;Oct 25, 2006&#39;</span>\n <span class=\"s1\">&#39;</span><span class=\"si\">%d</span><span class=\"s1\"> %b %Y&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;25 Oct 2006&#39;</span>\n <span class=\"s1\">&#39;</span><span class=\"si\">%d</span><span class=\"s1\"> %b, %Y&#39;</span><span class=\"p\">,</span>     <span class=\"c1\"># &#39;25 Oct, 2006&#39;</span>\n <span class=\"s1\">&#39;%B </span><span class=\"si\">%d</span><span class=\"s1\"> %Y&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;October 25 2006&#39;</span>\n <span class=\"s1\">&#39;%B </span><span class=\"si\">%d</span><span class=\"s1\">, %Y&#39;</span><span class=\"p\">,</span>     <span class=\"c1\"># &#39;October 25, 2006&#39;</span>\n <span class=\"s1\">&#39;</span><span class=\"si\">%d</span><span class=\"s1\"> %B %Y&#39;</span><span class=\"p\">,</span>      <span class=\"c1\"># &#39;25 October 2006&#39;</span>\n <span class=\"s1\">&#39;</span><span class=\"si\">%d</span><span class=\"s1\"> %B, %Y&#39;</span><span class=\"p\">]</span>     <span class=\"c1\"># &#39;25 October, 2006&#39;</span>\n</code></pre></div>\n<p>Lihat juga <a class=\"reference internal\" href=\"/id/2.2/topics/i18n/formatting/\"><span class=\"doc\">format localization</span></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"datetimefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DateTimeField</span></code><a class=\"heading-anchor\" href=\"#datetimefield\"><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.forms.DateTimeField\">\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\">DateTimeField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.DateTimeField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.DateTimeInput\" title=\"django.forms.DateTimeInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">DateTimeInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code> Python.</p></li>\n<li><p>Validates that the given value is either a <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code>,\n<code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code> or string formatted in a particular datetime format.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil satu argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DateTimeField.input_formats\">\n<span class=\"sig-name descname\"><span class=\"pre\">input_formats</span></span><a class=\"heading-anchor\" href=\"#django.forms.DateTimeField.input_formats\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A list of formats used to attempt to convert a string to a valid\n<code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code> object.</p>\n</dd></dl>\n\n<p>Jika tidak ada argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">input_formats</span></code> disediakan, bentuk masukan awalan adalah:</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=\"p\">[</span><span class=\"s1\">&#39;%Y-%m-</span><span class=\"si\">%d</span><span class=\"s1\"> %H:%M:%S&#39;</span><span class=\"p\">,</span>    <span class=\"c1\"># &#39;2006-10-25 14:30:59&#39;</span>\n <span class=\"s1\">&#39;%Y-%m-</span><span class=\"si\">%d</span><span class=\"s1\"> %H:%M&#39;</span><span class=\"p\">,</span>       <span class=\"c1\"># &#39;2006-10-25 14:30&#39;</span>\n <span class=\"s1\">&#39;%Y-%m-</span><span class=\"si\">%d</span><span class=\"s1\">&#39;</span><span class=\"p\">,</span>             <span class=\"c1\"># &#39;2006-10-25&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%Y %H:%M:%S&#39;</span><span class=\"p\">,</span>    <span class=\"c1\"># &#39;10/25/2006 14:30:59&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%Y %H:%M&#39;</span><span class=\"p\">,</span>       <span class=\"c1\"># &#39;10/25/2006 14:30&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%Y&#39;</span><span class=\"p\">,</span>             <span class=\"c1\"># &#39;10/25/2006&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%y %H:%M:%S&#39;</span><span class=\"p\">,</span>    <span class=\"c1\"># &#39;10/25/06 14:30:59&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%y %H:%M&#39;</span><span class=\"p\">,</span>       <span class=\"c1\"># &#39;10/25/06 14:30&#39;</span>\n <span class=\"s1\">&#39;%m/</span><span class=\"si\">%d</span><span class=\"s1\">/%y&#39;</span><span class=\"p\">]</span>             <span class=\"c1\"># &#39;10/25/06&#39;</span>\n</code></pre></div>\n<p>Lihat juga <a class=\"reference internal\" href=\"/id/2.2/topics/i18n/formatting/\"><span class=\"doc\">format localization</span></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"decimalfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DecimalField</span></code><a class=\"heading-anchor\" href=\"#decimalfield\"><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.forms.DecimalField\">\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\">DecimalField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.DecimalField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.NumberInput\" title=\"django.forms.NumberInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">NumberInput</span></code></a> ketika <a class=\"reference internal\" href=\"#django.forms.Field.localize\" title=\"django.forms.Field.localize\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Field.localize</span></code></a> adalah <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>, selain itu <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a>.</p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah <code class=\"docutils literal notranslate\"><span class=\"pre\">decimal</span></code> Python.</p></li>\n<li><p>Validates that the given value is a decimal. Uses\n<a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MaxValueValidator\" title=\"django.core.validators.MaxValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MaxValueValidator</span></code></a> and\n<a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MinValueValidator\" title=\"django.core.validators.MinValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MinValueValidator</span></code></a> if  <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> and\n<code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code> are provided. Leading and trailing whitespace is ignored.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_decimal_places</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_whole_digits</span></code></p></li>\n</ul>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code> error messages may contain\n<code class=\"docutils literal notranslate\"><span class=\"pre\">%(limit_value)s</span></code>, which will be substituted by the appropriate limit.\nSimilarly, the <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_decimal_places</span></code> and\n<code class=\"docutils literal notranslate\"><span class=\"pre\">max_whole_digits</span></code> error messages may contain <code class=\"docutils literal notranslate\"><span class=\"pre\">%(max)s</span></code>.</p>\n<p>Mengambil empat argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DecimalField.max_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.DecimalField.max_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DecimalField.min_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">min_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.DecimalField.min_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Ini mengendalikan jangkauan nilai yang diizinkan dalam bidang, dan harus diberikan sebagai nilai <code class=\"docutils literal notranslate\"><span class=\"pre\">decimal.Decimal</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DecimalField.max_digits\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_digits</span></span><a class=\"heading-anchor\" href=\"#django.forms.DecimalField.max_digits\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The maximum number of digits (those before the decimal point plus those\nafter the decimal point, with leading zeros stripped) permitted in the\nvalue.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.DecimalField.decimal_places\">\n<span class=\"sig-name descname\"><span class=\"pre\">decimal_places</span></span><a class=\"heading-anchor\" href=\"#django.forms.DecimalField.decimal_places\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Angka maksimal dari tempat desimal yang diizinkan.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"durationfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DurationField</span></code><a class=\"heading-anchor\" href=\"#durationfield\"><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.forms.DurationField\">\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\">DurationField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.DurationField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta\" title=\"(di Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">timedelta</span></code></a> Python.</p></li>\n<li><p>Validates that the given value is a string which can be converted into a\n<code class=\"docutils literal notranslate\"><span class=\"pre\">timedelta</span></code>. The value must be between <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta.min\" title=\"(di Python v3.14)\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">datetime.timedelta.min</span></code></a>\nand <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta.max\" title=\"(di Python v3.14)\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">datetime.timedelta.max</span></code></a>.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">overflow</span></code>.</p></li>\n</ul>\n<p>Menerima bentuk apapun yang dipahami oleh <a class=\"reference internal\" href=\"/id/2.2/ref/utils/#django.utils.dateparse.parse_duration\" title=\"django.utils.dateparse.parse_duration\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">parse_duration()</span></code></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"emailfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">EmailField</span></code><a class=\"heading-anchor\" href=\"#emailfield\"><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.forms.EmailField\">\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\">EmailField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.EmailField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.EmailInput\" title=\"django.forms.EmailInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">EmailInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Uses <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#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> to validate that\nthe given value is a valid email address, using a moderately complex\nregular expression.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Has two optional arguments for validation, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">min_length</span></code>.\nIf provided, these arguments ensure that the string is at most or at least the\ngiven length.</p>\n</dd></dl>\n\n</section>\n<section id=\"filefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">FileField</span></code><a class=\"heading-anchor\" href=\"#filefield\"><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.forms.FileField\">\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\">FileField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.FileField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.ClearableFileInput\" title=\"django.forms.ClearableFileInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ClearableFileInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalizes to: An <code class=\"docutils literal notranslate\"><span class=\"pre\">UploadedFile</span></code> object that wraps the file content\nand file name into a single object.</p></li>\n<li><p>Can validate that non-empty file data has been bound to the form.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">missing</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">empty</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code></p></li>\n</ul>\n<p>Has two optional arguments for validation, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code> and\n<code class=\"docutils literal notranslate\"><span class=\"pre\">allow_empty_file</span></code>. If provided, these ensure that the file name is at\nmost the given length, and that validation will succeed even if the file\ncontent is empty.</p>\n<p>Untuk belajar mengenai obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">UploadedFile</span></code>, lihat <a class=\"reference internal\" href=\"/id/2.2/topics/http/file-uploads/\"><span class=\"doc\">file uploads documentation</span></a>.</p>\n<p>When you use a <code class=\"docutils literal notranslate\"><span class=\"pre\">FileField</span></code> in a form, you must also remember to\n<a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#binding-uploaded-files\"><span class=\"std std-ref\">bind the file data to the form</span></a>.</p>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code> error refers to the length of the filename. In the error\nmessage for that key, <code class=\"docutils literal notranslate\"><span class=\"pre\">%(max)d</span></code> will be replaced with the maximum filename\nlength and <code class=\"docutils literal notranslate\"><span class=\"pre\">%(length)d</span></code> will be replaced with the current filename length.</p>\n</dd></dl>\n\n</section>\n<section id=\"filepathfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">FilePathField</span></code><a class=\"heading-anchor\" href=\"#filepathfield\"><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.forms.FilePathField\">\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\">FilePathField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.Select\" title=\"django.forms.Select\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Select</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Sahkan pilihan terpilih yang ada dalam daftar pilihan.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code></p></li>\n</ul>\n<p>The field allows choosing from files inside a certain directory. It takes five\nextra arguments; only <code class=\"docutils literal notranslate\"><span class=\"pre\">path</span></code> is required:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.FilePathField.path\">\n<span class=\"sig-name descname\"><span class=\"pre\">path</span></span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField.path\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Jalur mutlak ke pelipat yang isinya anda ingin daftarkan. Pelipat harus ada.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.FilePathField.recursive\">\n<span class=\"sig-name descname\"><span class=\"pre\">recursive</span></span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField.recursive\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>If <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> (the default) only the direct contents of <code class=\"docutils literal notranslate\"><span class=\"pre\">path</span></code> will be\noffered as choices. If <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, the directory will be descended into\nrecursively and all descendants will be listed as choices.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.FilePathField.match\">\n<span class=\"sig-name descname\"><span class=\"pre\">match</span></span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField.match\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A regular expression pattern; only files with names matching this expression\nwill be allowed as choices.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.FilePathField.allow_files\">\n<span class=\"sig-name descname\"><span class=\"pre\">allow_files</span></span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField.allow_files\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Optional.  Either <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.  Default is <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>.  Specifies\nwhether files in the specified location should be included.  Either this or\n<a class=\"reference internal\" href=\"#django.forms.FilePathField.allow_folders\" title=\"django.forms.FilePathField.allow_folders\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">allow_folders</span></code></a> must be <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.FilePathField.allow_folders\">\n<span class=\"sig-name descname\"><span class=\"pre\">allow_folders</span></span><a class=\"heading-anchor\" href=\"#django.forms.FilePathField.allow_folders\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Optional.  Either <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.  Default is <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.  Specifies\nwhether folders in the specified location should be included.  Either this or\n<a class=\"reference internal\" href=\"#django.forms.FilePathField.allow_files\" title=\"django.forms.FilePathField.allow_files\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">allow_files</span></code></a> must be <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"floatfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">FloatField</span></code><a class=\"heading-anchor\" href=\"#floatfield\"><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.forms.FloatField\">\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\">FloatField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.FloatField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.NumberInput\" title=\"django.forms.NumberInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">NumberInput</span></code></a> ketika <a class=\"reference internal\" href=\"#django.forms.Field.localize\" title=\"django.forms.Field.localize\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Field.localize</span></code></a> adalah <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>, selain itu <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a>.</p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasi menjadi: Sebuah float Python.</p></li>\n<li><p>Validates that the given value is a float. Uses\n<a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MaxValueValidator\" title=\"django.core.validators.MaxValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MaxValueValidator</span></code></a> and\n<a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MinValueValidator\" title=\"django.core.validators.MinValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MinValueValidator</span></code></a> if <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> and\n<code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code> are provided. Leading and trailing whitespace is allowed,\nas in Python's <code class=\"docutils literal notranslate\"><span class=\"pre\">float()</span></code> function.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code></p></li>\n</ul>\n<p>Takes two optional arguments for validation, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code>.\nThese control the range of values permitted in the field.</p>\n</dd></dl>\n\n</section>\n<section id=\"imagefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ImageField</span></code><a class=\"heading-anchor\" href=\"#imagefield\"><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.forms.ImageField\">\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\">ImageField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.ImageField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.ClearableFileInput\" title=\"django.forms.ClearableFileInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ClearableFileInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalizes to: An <code class=\"docutils literal notranslate\"><span class=\"pre\">UploadedFile</span></code> object that wraps the file content\nand file name into a single object.</p></li>\n<li><p>Validates that file data has been bound to the form. Also uses\n<a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.FileExtensionValidator\" title=\"django.core.validators.FileExtensionValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">FileExtensionValidator</span></code></a> to validate that\nthe file extension is supported by Pillow.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">missing</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">empty</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_image</span></code></p></li>\n</ul>\n<p>Using an <code class=\"docutils literal notranslate\"><span class=\"pre\">ImageField</span></code> requires that <a class=\"reference external\" href=\"https://pillow.readthedocs.io/en/latest/\">Pillow</a> is installed with support\nfor the image formats you use. If you encounter a <code class=\"docutils literal notranslate\"><span class=\"pre\">corrupt</span> <span class=\"pre\">image</span></code> error\nwhen you upload an image, it usually means that Pillow doesn't understand\nits format. To fix this, install the appropriate library and reinstall\nPillow.</p>\n<p>Ketika menggunakan <code class=\"docutils literal notranslate\"><span class=\"pre\">ImageField</span></code> pada formulir, anda harus juga mengingat untuk <a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#binding-uploaded-files\"><span class=\"std std-ref\">bind the file data to the form</span></a>.</p>\n<p>After the field has been cleaned and validated, the <code class=\"docutils literal notranslate\"><span class=\"pre\">UploadedFile</span></code>\nobject will have an additional <code class=\"docutils literal notranslate\"><span class=\"pre\">image</span></code> attribute containing the Pillow\n<a class=\"reference external\" href=\"https://pillow.readthedocs.io/en/latest/reference/Image.html\">Image</a> instance used to check if the file was a valid image. Pillow\ncloses the underlying file descriptor after verifying an image, so whilst\nnon-image data attributes, such as <code class=\"docutils literal notranslate\"><span class=\"pre\">format</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">height</span></code>, and <code class=\"docutils literal notranslate\"><span class=\"pre\">width</span></code>,\nare available, methods that access the underlying image data, such as\n<code class=\"docutils literal notranslate\"><span class=\"pre\">getdata()</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">getpixel()</span></code>, cannot be used without reopening the file.\nFor example:</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=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">PIL</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">Image</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><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<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.core.files.uploadedfile</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">SimpleUploadedFile</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">ImageForm</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=\"gp\">... </span>    <span class=\"n\">img</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ImageField</span><span class=\"p\">()</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">file_data</span> <span class=\"o\">=</span> <span class=\"p\">{</span><span class=\"s1\">&#39;img&#39;</span><span class=\"p\">:</span> <span class=\"n\">SimpleUploadedFile</span><span class=\"p\">(</span><span class=\"s1\">&#39;test.png&#39;</span><span class=\"p\">,</span> <span class=\"o\">&lt;</span><span class=\"n\">file</span> <span class=\"n\">data</span><span class=\"o\">&gt;</span><span class=\"p\">)}</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">form</span> <span class=\"o\">=</span> <span class=\"n\">ImageForm</span><span class=\"p\">({},</span> <span class=\"n\">file_data</span><span class=\"p\">)</span>\n<span class=\"go\"># Pillow closes the underlying file descriptor.</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">form</span><span class=\"o\">.</span><span class=\"n\">is_valid</span><span class=\"p\">()</span>\n<span class=\"go\">True</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span> <span class=\"o\">=</span> <span class=\"n\">form</span><span class=\"o\">.</span><span class=\"n\">cleaned_data</span><span class=\"p\">[</span><span class=\"s1\">&#39;img&#39;</span><span class=\"p\">]</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span><span class=\"o\">.</span><span class=\"n\">image</span>\n<span class=\"go\">&lt;PIL.PngImagePlugin.PngImageFile image mode=RGBA size=191x287 at 0x7F5985045C18&gt;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span><span class=\"o\">.</span><span class=\"n\">image</span><span class=\"o\">.</span><span class=\"n\">width</span>\n<span class=\"go\">191</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span><span class=\"o\">.</span><span class=\"n\">image</span><span class=\"o\">.</span><span class=\"n\">height</span>\n<span class=\"go\">287</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span><span class=\"o\">.</span><span class=\"n\">image</span><span class=\"o\">.</span><span class=\"n\">format</span>\n<span class=\"go\">&#39;PNG&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image_field</span><span class=\"o\">.</span><span class=\"n\">image</span><span class=\"o\">.</span><span class=\"n\">getdata</span><span class=\"p\">()</span>\n<span class=\"go\"># Raises AttributeError: &#39;NoneType&#39; object has no attribute &#39;seek&#39;.</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image</span> <span class=\"o\">=</span> <span class=\"n\">Image</span><span class=\"o\">.</span><span class=\"n\">open</span><span class=\"p\">(</span><span class=\"n\">image_field</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">image</span><span class=\"o\">.</span><span class=\"n\">getdata</span><span class=\"p\">()</span>\n<span class=\"go\">&lt;ImagingCore object at 0x7f5984f874b0&gt;</span>\n</code></pre></div>\n<p>Additionally, <code class=\"docutils literal notranslate\"><span class=\"pre\">UploadedFile.content_type</span></code> will be updated with the\nimage's content type if Pillow can determine it, otherwise it will be set\nto <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"integerfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">IntegerField</span></code><a class=\"heading-anchor\" href=\"#integerfield\"><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.forms.IntegerField\">\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\">IntegerField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.IntegerField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.NumberInput\" title=\"django.forms.NumberInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">NumberInput</span></code></a> ketika <a class=\"reference internal\" href=\"#django.forms.Field.localize\" title=\"django.forms.Field.localize\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Field.localize</span></code></a> adalah <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>, selain itu <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a>.</p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasi menjadi: Sebuah integer Python.</p></li>\n<li><p>mensahkan bahwa nilai yang diberikan adalah integer. Gunakan <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MaxValueValidator\" title=\"django.core.validators.MaxValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MaxValueValidator</span></code></a> dan <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.MinValueValidator\" title=\"django.core.validators.MinValueValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MinValueValidator</span></code></a> jika <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code> disediakan. Awalan dan pengekangan ruang putih diijinkan, seeprti dalam fungsi <code class=\"docutils literal notranslate\"><span class=\"pre\">int()</span></code> Python.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code></p></li>\n</ul>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">max_value</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">min_value</span></code> error messages may contain\n<code class=\"docutils literal notranslate\"><span class=\"pre\">%(limit_value)s</span></code>, which will be substituted by the appropriate limit.</p>\n<p>Mengambil dua argumen pilihan untuk pengesahan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.IntegerField.max_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.IntegerField.max_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.IntegerField.min_value\">\n<span class=\"sig-name descname\"><span class=\"pre\">min_value</span></span><a class=\"heading-anchor\" href=\"#django.forms.IntegerField.min_value\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Ini mengendalikan jangkauan nilai yang diizinkan di bidang.</p>\n</dd></dl>\n\n</section>\n<section id=\"genericipaddressfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">GenericIPAddressField</span></code><a class=\"heading-anchor\" href=\"#genericipaddressfield\"><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.forms.GenericIPAddressField\">\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\">GenericIPAddressField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.GenericIPAddressField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Bidang mengandung antara alamat IPv4 atau IPv6.</p>\n<ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Dinormalkan ke: String. Alamat IPv6 dinormalkan seperti digambarkan dibawah.</p></li>\n<li><p>Mensahkan bahwa nilai yang diberikan adalah alamat IP sah.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Normalisasi alamat IPv6 mengikuti <span class=\"target\" id=\"index-2\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc4291.html#section-2.2\"><strong>RFC 4291 Section 2.2</strong></a> bagian 2.2, termasuk menggunakan bentuk IPv4 disarankan dalam paragraf 3 dari bagian itu, seperti <code class=\"docutils literal notranslate\"><span class=\"pre\">::ffff:192.0.2.0</span></code>. Sebagai contoh, <code class=\"docutils literal notranslate\"><span class=\"pre\">2001:0::0:01</span></code> akan dinormalkan menjadi <code class=\"docutils literal notranslate\"><span class=\"pre\">2001::1</span></code>, dan <code class=\"docutils literal notranslate\"><span class=\"pre\">::ffff:0a0a:0a0a</span></code> menjadi <code class=\"docutils literal notranslate\"><span class=\"pre\">::ffff:10.10.10.10</span></code>. Semau karakter dirubah menjadi huruf kecil.</p>\n<p>Mengambil dua argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.GenericIPAddressField.protocol\">\n<span class=\"sig-name descname\"><span class=\"pre\">protocol</span></span><a class=\"heading-anchor\" href=\"#django.forms.GenericIPAddressField.protocol\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Membatasi masukan sah pada protokol tertentu. Nilai-nilai diterima adalah <code class=\"docutils literal notranslate\"><span class=\"pre\">both</span></code> (default), <code class=\"docutils literal notranslate\"><span class=\"pre\">IPv4</span></code> atau <code class=\"docutils literal notranslate\"><span class=\"pre\">IPv6</span></code>. Cocok adalah kasus tidak peka.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.GenericIPAddressField.unpack_ipv4\">\n<span class=\"sig-name descname\"><span class=\"pre\">unpack_ipv4</span></span><a class=\"heading-anchor\" href=\"#django.forms.GenericIPAddressField.unpack_ipv4\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Unpacks IPv4 mapped addresses like <code class=\"docutils literal notranslate\"><span class=\"pre\">::ffff:192.0.2.1</span></code>.\nIf this option is enabled that address would be unpacked to\n<code class=\"docutils literal notranslate\"><span class=\"pre\">192.0.2.1</span></code>. Default is disabled. Can only be used\nwhen <code class=\"docutils literal notranslate\"><span class=\"pre\">protocol</span></code> is set to <code class=\"docutils literal notranslate\"><span class=\"pre\">'both'</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"multiplechoicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MultipleChoiceField</span></code><a class=\"heading-anchor\" href=\"#multiplechoicefield\"><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.forms.MultipleChoiceField\">\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\">MultipleChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.MultipleChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.SelectMultiple\" title=\"django.forms.SelectMultiple\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SelectMultiple</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">[]</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah list dari string.</p></li>\n<li><p>Mensahkan bahwa nilai di daftar yang diberikan dari nilai yang ada di daftar pilihan.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_list</span></code></p></li>\n</ul>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code> error message may contain <code class=\"docutils literal notranslate\"><span class=\"pre\">%(value)s</span></code>, which will be\nreplaced with the selected choice.</p>\n<p>Mengambil satu tambahan argumen wajib, <code class=\"docutils literal notranslate\"><span class=\"pre\">choices</span></code>, tentang <a class=\"reference internal\" href=\"#django.forms.ChoiceField\" title=\"django.forms.ChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ChoiceField</span></code></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"typedmultiplechoicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">TypedMultipleChoiceField</span></code><a class=\"heading-anchor\" href=\"#typedmultiplechoicefield\"><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.forms.TypedMultipleChoiceField\">\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\">TypedMultipleChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.TypedMultipleChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sama seperti <a class=\"reference internal\" href=\"#django.forms.MultipleChoiceField\" title=\"django.forms.MultipleChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MultipleChoiceField</span></code></a>, kecuali <a class=\"reference internal\" href=\"#django.forms.TypedMultipleChoiceField\" title=\"django.forms.TypedMultipleChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TypedMultipleChoiceField</span></code></a> mengambil dua argumen tambahan, <code class=\"docutils literal notranslate\"><span class=\"pre\">coerce</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">empty_value</span></code>.</p>\n<ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.SelectMultiple\" title=\"django.forms.SelectMultiple\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SelectMultiple</span></code></a></p></li>\n<li><p>Nilai kosong: Apapun anda telah berikan sebagai <code class=\"docutils literal notranslate\"><span class=\"pre\">empty_value</span></code>.</p></li>\n<li><p>Normalizes to: A list of values of the type provided by the <code class=\"docutils literal notranslate\"><span class=\"pre\">coerce</span></code>\nargument.</p></li>\n<li><p>Validates that the given values exists in the list of choices and can be\ncoerced.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code></p></li>\n</ul>\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code> error message may contain <code class=\"docutils literal notranslate\"><span class=\"pre\">%(value)s</span></code>, which will be\nreplaced with the selected choice.</p>\n<p>Takes two extra arguments, <code class=\"docutils literal notranslate\"><span class=\"pre\">coerce</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">empty_value</span></code>, as for\n<a class=\"reference internal\" href=\"#django.forms.TypedChoiceField\" title=\"django.forms.TypedChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TypedChoiceField</span></code></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"nullbooleanfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">NullBooleanField</span></code><a class=\"heading-anchor\" href=\"#nullbooleanfield\"><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.forms.NullBooleanField\">\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\">NullBooleanField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.NullBooleanField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: :class:<code class=\"docutils literal notranslate\"><span class=\"pre\">`TypedMultipleChoiceField`</span></code></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalizes to: A Python <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> or <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> value.</p></li>\n<li><p>Validates nothing (i.e., it never raises a <code class=\"docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code>).</p></li>\n</ul>\n</dd></dl>\n\n</section>\n<section id=\"regexfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">RegexField</span></code><a class=\"heading-anchor\" href=\"#regexfield\"><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.forms.RegexField\">\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\">RegexField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.RegexField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Uses <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#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> to validate that\nthe given value matches a certain regular expression.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil satu argumen diwajibkan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.RegexField.regex\">\n<span class=\"sig-name descname\"><span class=\"pre\">regex</span></span><a class=\"heading-anchor\" href=\"#django.forms.RegexField.regex\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A regular expression specified either as a string or a compiled regular\nexpression object.</p>\n</dd></dl>\n\n<p>Also takes <code class=\"docutils literal notranslate\"><span class=\"pre\">max_length</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">min_length</span></code>, and <code class=\"docutils literal notranslate\"><span class=\"pre\">strip</span></code>, which work just\nas they do for <a class=\"reference internal\" href=\"#django.forms.CharField\" title=\"django.forms.CharField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">CharField</span></code></a>.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.RegexField.strip\">\n<span class=\"sig-name descname\"><span class=\"pre\">strip</span></span><a class=\"heading-anchor\" href=\"#django.forms.RegexField.strip\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>. If enabled, stripping will be applied before the\nregex validation.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"slugfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">SlugField</span></code><a class=\"heading-anchor\" href=\"#slugfield\"><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.forms.SlugField\">\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\">SlugField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.SlugField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Menggunakan <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.validate_slug\" title=\"django.core.validators.validate_slug\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">validate_slug</span></code></a> atau <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.validate_unicode_slug\" title=\"django.core.validators.validate_unicode_slug\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">validate_unicode_slug</span></code></a> untuk mensahkan bahwa nilai yang diberikan mengandung hanya huruf, angka, garis bawah dan penghubung.</p></li>\n<li><p>Pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>.</p></li>\n</ul>\n<p>Bidang ini dimaksudkan untuk digunakan dalam mewakilkan model <a class=\"reference internal\" href=\"/id/2.2/ref/models/fields/#django.db.models.SlugField\" title=\"django.db.models.SlugField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SlugField</span></code></a> di formulir.</p>\n<p>Mengambil sebuah parameter pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.SlugField.allow_unicode\">\n<span class=\"sig-name descname\"><span class=\"pre\">allow_unicode</span></span><a class=\"heading-anchor\" href=\"#django.forms.SlugField.allow_unicode\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A boolean instructing the field to accept Unicode letters in addition\nto ASCII letters. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"timefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">TimeField</span></code><a class=\"heading-anchor\" href=\"#timefield\"><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.forms.TimeField\">\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\">TimeField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.TimeField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TimeInput\" title=\"django.forms.TimeInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TimeInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.time</span></code> Python.</p></li>\n<li><p>Validates that the given value is either a <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.time</span></code> or string\nformatted in a particular time format.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil satu argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.TimeField.input_formats\">\n<span class=\"sig-name descname\"><span class=\"pre\">input_formats</span></span><a class=\"heading-anchor\" href=\"#django.forms.TimeField.input_formats\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A list of formats used to attempt to convert a string to a valid\n<code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.time</span></code> object.</p>\n</dd></dl>\n\n<p>Jika tidak ada argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">input_formats</span></code> disediakan, bentuk masukan awalan adalah:</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=\"s1\">&#39;%H:%M:%S&#39;</span><span class=\"p\">,</span>     <span class=\"c1\"># &#39;14:30:59&#39;</span>\n<span class=\"s1\">&#39;%H:%M&#39;</span><span class=\"p\">,</span>        <span class=\"c1\"># &#39;14:30&#39;</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"urlfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">URLField</span></code><a class=\"heading-anchor\" href=\"#urlfield\"><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.forms.URLField\">\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\">URLField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.URLField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.URLInput\" title=\"django.forms.URLInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">URLInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Uses <a class=\"reference internal\" href=\"/id/2.2/ref/validators/#django.core.validators.URLValidator\" title=\"django.core.validators.URLValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">URLValidator</span></code></a> to validate that the\ngiven value is a valid URL.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil argumen pilihan berikut:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.URLField.max_length\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_length</span></span><a class=\"heading-anchor\" href=\"#django.forms.URLField.max_length\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.URLField.min_length\">\n<span class=\"sig-name descname\"><span class=\"pre\">min_length</span></span><a class=\"heading-anchor\" href=\"#django.forms.URLField.min_length\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Ini adalah sama seperti <code class=\"docutils literal notranslate\"><span class=\"pre\">CharField.max_length</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">CharField.min_length</span></code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"uuidfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">UUIDField</span></code><a class=\"heading-anchor\" href=\"#uuidfield\"><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.forms.UUIDField\">\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\">UUIDField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.UUIDField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah obyek class:~python:uuid.UUID.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>This field will accept any string format accepted as the <code class=\"docutils literal notranslate\"><span class=\"pre\">hex</span></code> argument\nto the <a class=\"reference external\" href=\"https://docs.python.org/3/library/uuid.html#uuid.UUID\" title=\"(di Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">UUID</span></code></a> constructor.</p>\n</dd></dl>\n\n</section>\n</section>\n<section id=\"slightly-complex-built-in-field-classes\">\n<h2>Slightly complex built-in <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> classes<a class=\"heading-anchor\" href=\"#slightly-complex-built-in-field-classes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<section id=\"combofield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ComboField</span></code><a class=\"heading-anchor\" href=\"#combofield\"><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.forms.ComboField\">\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\">ComboField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.ComboField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalisasikan menjadi: Sebuah string.</p></li>\n<li><p>Validates the given value against each of the fields specified\nas an argument to the <code class=\"docutils literal notranslate\"><span class=\"pre\">ComboField</span></code>.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code></p></li>\n</ul>\n<p>Mengambil satu argumen tambahan diwajibkan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ComboField.fields\">\n<span class=\"sig-name descname\"><span class=\"pre\">fields</span></span><a class=\"heading-anchor\" href=\"#django.forms.ComboField.fields\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The list of fields that should be used to validate the field's value (in\nthe order in which they are provided).</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=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.forms</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ComboField</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span> <span class=\"o\">=</span> <span class=\"n\">ComboField</span><span class=\"p\">(</span><span class=\"n\">fields</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">CharField</span><span class=\"p\">(</span><span class=\"n\">max_length</span><span class=\"o\">=</span><span class=\"mi\">20</span><span class=\"p\">),</span> <span class=\"n\">EmailField</span><span class=\"p\">()])</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;test@example.com&#39;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;test@example.com&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">f</span><span class=\"o\">.</span><span class=\"n\">clean</span><span class=\"p\">(</span><span class=\"s1\">&#39;longemailaddress@example.com&#39;</span><span class=\"p\">)</span>\n<span class=\"gt\">Traceback (most recent call last):</span>\n<span class=\"c\">...</span>\n<span class=\"gr\">ValidationError</span>: <span class=\"n\">[&#39;Ensure this value has at most 20 characters (it has 28).&#39;]</span>\n</code></pre></div>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"multivaluefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MultiValueField</span></code><a class=\"heading-anchor\" href=\"#multivaluefield\"><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.forms.MultiValueField\">\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\">MultiValueField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">fields</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=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.MultiValueField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">''</span></code> (sebuah deretan karakter kosong)</p></li>\n<li><p>Normalizes to: the type returned by the <code class=\"docutils literal notranslate\"><span class=\"pre\">compress</span></code> method of the subclass.</p></li>\n<li><p>Validates the given value against each of the fields specified\nas an argument to the <code class=\"docutils literal notranslate\"><span class=\"pre\">MultiValueField</span></code>.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">incomplete</span></code></p></li>\n</ul>\n<p>Aggregates the logic of multiple fields that together produce a single\nvalue.</p>\n<p>This field is abstract and must be subclassed. In contrast with the\nsingle-value fields, subclasses of <a class=\"reference internal\" href=\"#django.forms.MultiValueField\" title=\"django.forms.MultiValueField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MultiValueField</span></code></a> must not\nimplement <a class=\"reference internal\" href=\"#django.forms.Field.clean\" title=\"django.forms.Field.clean\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">clean()</span></code></a> but instead - implement\n<a class=\"reference internal\" href=\"#django.forms.MultiValueField.compress\" title=\"django.forms.MultiValueField.compress\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">compress()</span></code></a>.</p>\n<p>Mengambil satu argumen tambahan diwajibkan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.MultiValueField.fields\">\n<span class=\"sig-name descname\"><span class=\"pre\">fields</span></span><a class=\"heading-anchor\" href=\"#django.forms.MultiValueField.fields\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A tuple of fields whose values are cleaned and subsequently combined\ninto a single value.  Each value of the field is cleaned by the\ncorresponding field in <code class=\"docutils literal notranslate\"><span class=\"pre\">fields</span></code> -- the first value is cleaned by the\nfirst field, the second value is cleaned by the second field, etc.\nOnce all fields are cleaned, the list of clean values is combined into\na single value by <a class=\"reference internal\" href=\"#django.forms.MultiValueField.compress\" title=\"django.forms.MultiValueField.compress\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">compress()</span></code></a>.</p>\n</dd></dl>\n\n<p>Juga ambil beberapa argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.MultiValueField.require_all_fields\">\n<span class=\"sig-name descname\"><span class=\"pre\">require_all_fields</span></span><a class=\"heading-anchor\" href=\"#django.forms.MultiValueField.require_all_fields\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, in which case a <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code> validation error\nwill be raised if no value is supplied for any field.</p>\n<p>When set to <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>, the <a class=\"reference internal\" href=\"#django.forms.Field.required\" title=\"django.forms.Field.required\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">Field.required</span></code></a> attribute can be set\nto <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> for individual fields to make them optional. If no value\nis supplied for a required field, an <code class=\"docutils literal notranslate\"><span class=\"pre\">incomplete</span></code> validation error\nwill be raised.</p>\n<p>A default <code class=\"docutils literal notranslate\"><span class=\"pre\">incomplete</span></code> error message can be defined on the\n<a class=\"reference internal\" href=\"#django.forms.MultiValueField\" title=\"django.forms.MultiValueField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">MultiValueField</span></code></a> subclass, or different messages can be defined\non each individual field. For example:</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.validators</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">RegexValidator</span>\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">PhoneField</span><span class=\"p\">(</span><span class=\"n\">MultiValueField</span><span class=\"p\">):</span>\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"fm\">__init__</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span>\n        <span class=\"c1\"># Define one message for all fields.</span>\n        <span class=\"n\">error_messages</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n            <span class=\"s1\">&#39;incomplete&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Enter a country calling code and a phone number.&#39;</span><span class=\"p\">,</span>\n        <span class=\"p\">}</span>\n        <span class=\"c1\"># Or define a different message for each field.</span>\n        <span class=\"n\">fields</span> <span class=\"o\">=</span> <span class=\"p\">(</span>\n            <span class=\"n\">CharField</span><span class=\"p\">(</span>\n                <span class=\"n\">error_messages</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s1\">&#39;incomplete&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Enter a country calling code.&#39;</span><span class=\"p\">},</span>\n                <span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span>\n                    <span class=\"n\">RegexValidator</span><span class=\"p\">(</span><span class=\"sa\">r</span><span class=\"s1\">&#39;^[0-9]+$&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;Enter a valid country calling code.&#39;</span><span class=\"p\">),</span>\n                <span class=\"p\">],</span>\n            <span class=\"p\">),</span>\n            <span class=\"n\">CharField</span><span class=\"p\">(</span>\n                <span class=\"n\">error_messages</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s1\">&#39;incomplete&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;Enter a phone number.&#39;</span><span class=\"p\">},</span>\n                <span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">RegexValidator</span><span class=\"p\">(</span><span class=\"sa\">r</span><span class=\"s1\">&#39;^[0-9]+$&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;Enter a valid phone number.&#39;</span><span class=\"p\">)],</span>\n            <span class=\"p\">),</span>\n            <span class=\"n\">CharField</span><span class=\"p\">(</span>\n                <span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">RegexValidator</span><span class=\"p\">(</span><span class=\"sa\">r</span><span class=\"s1\">&#39;^[0-9]+$&#39;</span><span class=\"p\">,</span> <span class=\"s1\">&#39;Enter a valid extension.&#39;</span><span class=\"p\">)],</span>\n                <span class=\"n\">required</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">,</span>\n            <span class=\"p\">),</span>\n        <span class=\"p\">)</span>\n        <span class=\"nb\">super</span><span class=\"p\">()</span><span class=\"o\">.</span><span class=\"fm\">__init__</span><span class=\"p\">(</span>\n            <span class=\"n\">error_messages</span><span class=\"o\">=</span><span class=\"n\">error_messages</span><span class=\"p\">,</span> <span class=\"n\">fields</span><span class=\"o\">=</span><span class=\"n\">fields</span><span class=\"p\">,</span>\n            <span class=\"n\">require_all_fields</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span>\n        <span class=\"p\">)</span>\n</code></pre></div>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.MultiValueField.widget\">\n<span class=\"sig-name descname\"><span class=\"pre\">widget</span></span><a class=\"heading-anchor\" href=\"#django.forms.MultiValueField.widget\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Must be a subclass of <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.MultiWidget\" title=\"django.forms.MultiWidget\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">django.forms.MultiWidget</span></code></a>.\nDefault value is <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.TextInput\" title=\"django.forms.TextInput\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TextInput</span></code></a>, which\nprobably is not very useful in this case.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.forms.MultiValueField.compress\">\n<span class=\"sig-name descname\"><span class=\"pre\">compress</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">data_list</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.MultiValueField.compress\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Takes a list of valid values and returns  a &quot;compressed&quot; version of\nthose values -- in a single value. For example,\n<a class=\"reference internal\" href=\"#django.forms.SplitDateTimeField\" title=\"django.forms.SplitDateTimeField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SplitDateTimeField</span></code></a> is a subclass which combines a time field\nand a date field into a <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime</span></code> object.</p>\n<p>Cara ini harus diterapkan di subkelas.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"splitdatetimefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">SplitDateTimeField</span></code><a class=\"heading-anchor\" href=\"#splitdatetimefield\"><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.forms.SplitDateTimeField\">\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\">SplitDateTimeField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.SplitDateTimeField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.SplitDateTimeWidget\" title=\"django.forms.SplitDateTimeWidget\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SplitDateTimeWidget</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasikan menjadi: Sebuah obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code> Python.</p></li>\n<li><p>Mensahkan bahwa nilai yang diberikan adalah berbentuk <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code> atau string dalam bentuk datetime khusus.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_date</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_time</span></code></p></li>\n</ul>\n<p>Mengambil dua argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.SplitDateTimeField.input_date_formats\">\n<span class=\"sig-name descname\"><span class=\"pre\">input_date_formats</span></span><a class=\"heading-anchor\" href=\"#django.forms.SplitDateTimeField.input_date_formats\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sebuah daftar dari bentuk untuk berusaha merubah sebuah string menjadi obyek <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code> sah.</p>\n</dd></dl>\n\n<p>If no <code class=\"docutils literal notranslate\"><span class=\"pre\">input_date_formats</span></code> argument is provided, the default input formats\nfor <a class=\"reference internal\" href=\"#django.forms.DateField\" title=\"django.forms.DateField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">DateField</span></code></a> are used.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.SplitDateTimeField.input_time_formats\">\n<span class=\"sig-name descname\"><span class=\"pre\">input_time_formats</span></span><a class=\"heading-anchor\" href=\"#django.forms.SplitDateTimeField.input_time_formats\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A list of formats used to attempt to convert a string to a valid\n<code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.time</span></code> object.</p>\n</dd></dl>\n\n<p>Jika tidak ada argumen <code class=\"docutils literal notranslate\"><span class=\"pre\">input_time_formats</span></code> disediakan, bentuk masukan awalan untuk <a class=\"reference internal\" href=\"#django.forms.TimeField\" title=\"django.forms.TimeField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">TimeField</span></code></a> adalah yang digunakan.</p>\n</dd></dl>\n\n</section>\n</section>\n<section id=\"fields-which-handle-relationships\">\n<h2>Bidang-bidang yang menangani hubungan<a class=\"heading-anchor\" href=\"#fields-which-handle-relationships\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Two fields are available for representing relationships between\nmodels: <a class=\"reference internal\" href=\"#django.forms.ModelChoiceField\" title=\"django.forms.ModelChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code></a> and\n<a class=\"reference internal\" href=\"#django.forms.ModelMultipleChoiceField\" title=\"django.forms.ModelMultipleChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelMultipleChoiceField</span></code></a>.  Both of these fields require a\nsingle <code class=\"docutils literal notranslate\"><span class=\"pre\">queryset</span></code> parameter that is used to create the choices for\nthe field.  Upon form validation, these fields will place either one\nmodel object (in the case of <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code>) or multiple model\nobjects (in the case of <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelMultipleChoiceField</span></code>) into the\n<code class=\"docutils literal notranslate\"><span class=\"pre\">cleaned_data</span></code> dictionary of the form.</p>\n<p>Untuk penggunaan lebih rumit, anda dapat menentukan <code class=\"docutils literal notranslate\"><span class=\"pre\">queryset=None</span></code> ketika menyatakan bidang formulir dan kemudian mengumpulkan <code class=\"docutils literal notranslate\"><span class=\"pre\">queryset</span></code> dalam metode <code class=\"docutils literal notranslate\"><span class=\"pre\">__init__()</span></code> formulir:</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=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">FooMultipleChoiceForm</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\">foo_select</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ModelMultipleChoiceField</span><span class=\"p\">(</span><span class=\"n\">queryset</span><span class=\"o\">=</span><span class=\"kc\">None</span><span class=\"p\">)</span>\n\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"fm\">__init__</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">,</span> <span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span>\n        <span class=\"nb\">super</span><span class=\"p\">()</span><span class=\"o\">.</span><span class=\"fm\">__init__</span><span class=\"p\">(</span><span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">)</span>\n        <span class=\"bp\">self</span><span class=\"o\">.</span><span class=\"n\">fields</span><span class=\"p\">[</span><span class=\"s1\">&#39;foo_select&#39;</span><span class=\"p\">]</span><span class=\"o\">.</span><span class=\"n\">queryset</span> <span class=\"o\">=</span> <span class=\"o\">...</span>\n</code></pre></div>\n<section id=\"modelchoicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code><a class=\"heading-anchor\" href=\"#modelchoicefield\"><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.forms.ModelChoiceField\">\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\">ModelChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.ModelChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awalan: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.Select\" title=\"django.forms.Select\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Select</span></code></a></p></li>\n<li><p>Nilai kosong: <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code></p></li>\n<li><p>Normalisasi menjadi: Sebuah instance model.</p></li>\n<li><p>Mensahkan dimana id diberikan ada dalam queryset.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code></p></li>\n</ul>\n<p>Mengizinkan pemilihan dari obyek model tunggal, cocok untuk mewakili sebuah foreign-key. Catat bahwa widget awalan untuk <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code> menjadi tidak praktis ketika angka dari masukan meningkat. Anda harus menghindari menggunakan itu untuk lebih dari 100 barang.</p>\n<p>Argumen tunggal dibutuhkan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ModelChoiceField.queryset\">\n<span class=\"sig-name descname\"><span class=\"pre\">queryset</span></span><a class=\"heading-anchor\" href=\"#django.forms.ModelChoiceField.queryset\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sebuah <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code> obyek model dimana pilihan untuk bidang adalah diturunkan dan dimana digunakan untuk mensahkan pemilihan pengguna. Itu dinilai ketika formulir dibangun.</p>\n</dd></dl>\n\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code> juga mengambil dua argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ModelChoiceField.empty_label\">\n<span class=\"sig-name descname\"><span class=\"pre\">empty_label</span></span><a class=\"heading-anchor\" href=\"#django.forms.ModelChoiceField.empty_label\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>By default the <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;select&gt;</span></code> widget used by <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code> will have an\nempty choice at the top of the list. You can change the text of this\nlabel (which is <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;---------&quot;</span></code> by default) with the <code class=\"docutils literal notranslate\"><span class=\"pre\">empty_label</span></code>\nattribute, or you can disable the empty label entirely by setting\n<code class=\"docutils literal notranslate\"><span class=\"pre\">empty_label</span></code> to <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>:</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=\"c1\"># A custom empty label</span>\n<span class=\"n\">field1</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ModelChoiceField</span><span class=\"p\">(</span><span class=\"n\">queryset</span><span class=\"o\">=...</span><span class=\"p\">,</span> <span class=\"n\">empty_label</span><span class=\"o\">=</span><span class=\"s2\">&quot;(Nothing)&quot;</span><span class=\"p\">)</span>\n\n<span class=\"c1\"># No empty label</span>\n<span class=\"n\">field2</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ModelChoiceField</span><span class=\"p\">(</span><span class=\"n\">queryset</span><span class=\"o\">=...</span><span class=\"p\">,</span> <span class=\"n\">empty_label</span><span class=\"o\">=</span><span class=\"kc\">None</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Catat bahwa jika sebuah <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code> diwajibkan dan mempunyai nilai awal awalan, tidak ada pilihan kosong dibuat (meskipun dari nilai dari <code class=\"docutils literal notranslate\"><span class=\"pre\">empty_label</span></code>).</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ModelChoiceField.to_field_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">to_field_name</span></span><a class=\"heading-anchor\" href=\"#django.forms.ModelChoiceField.to_field_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>This optional argument is used to specify the field to use as the value\nof the choices in the field's widget. Be sure it's a unique field for\nthe model, otherwise the selected value could match more than one\nobject. By default it is set to <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, in which case the primary key\nof each object will be used. For example:</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=\"c1\"># No custom to_field_name</span>\n<span class=\"n\">field1</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ModelChoiceField</span><span class=\"p\">(</span><span class=\"n\">queryset</span><span class=\"o\">=...</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>akan menghasilkan:</p>\n<div class=\"code-block\" data-language=\"html\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Html</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=\"Html code\"><code><span class=\"p\">&lt;</span><span class=\"nt\">select</span> <span class=\"na\">id</span><span class=\"o\">=</span><span class=\"s\">&quot;id_field1&quot;</span> <span class=\"na\">name</span><span class=\"o\">=</span><span class=\"s\">&quot;field1&quot;</span><span class=\"p\">&gt;</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">option</span> <span class=\"na\">value</span><span class=\"o\">=</span><span class=\"s\">&quot;obj1.pk&quot;</span><span class=\"p\">&gt;</span>Object1<span class=\"p\">&lt;/</span><span class=\"nt\">option</span><span class=\"p\">&gt;</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">option</span> <span class=\"na\">value</span><span class=\"o\">=</span><span class=\"s\">&quot;obj2.pk&quot;</span><span class=\"p\">&gt;</span>Object2<span class=\"p\">&lt;/</span><span class=\"nt\">option</span><span class=\"p\">&gt;</span>\n...\n<span class=\"p\">&lt;/</span><span class=\"nt\">select</span><span class=\"p\">&gt;</span>\n</code></pre></div>\n<p>dan:</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=\"c1\"># to_field_name provided</span>\n<span class=\"n\">field2</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">ModelChoiceField</span><span class=\"p\">(</span><span class=\"n\">queryset</span><span class=\"o\">=...</span><span class=\"p\">,</span> <span class=\"n\">to_field_name</span><span class=\"o\">=</span><span class=\"s2\">&quot;name&quot;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>akan menghasilkan:</p>\n<div class=\"code-block\" data-language=\"html\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Html</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=\"Html code\"><code><span class=\"p\">&lt;</span><span class=\"nt\">select</span> <span class=\"na\">id</span><span class=\"o\">=</span><span class=\"s\">&quot;id_field2&quot;</span> <span class=\"na\">name</span><span class=\"o\">=</span><span class=\"s\">&quot;field2&quot;</span><span class=\"p\">&gt;</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">option</span> <span class=\"na\">value</span><span class=\"o\">=</span><span class=\"s\">&quot;obj1.name&quot;</span><span class=\"p\">&gt;</span>Object1<span class=\"p\">&lt;/</span><span class=\"nt\">option</span><span class=\"p\">&gt;</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">option</span> <span class=\"na\">value</span><span class=\"o\">=</span><span class=\"s\">&quot;obj2.name&quot;</span><span class=\"p\">&gt;</span>Object2<span class=\"p\">&lt;/</span><span class=\"nt\">option</span><span class=\"p\">&gt;</span>\n...\n<span class=\"p\">&lt;/</span><span class=\"nt\">select</span><span class=\"p\">&gt;</span>\n</code></pre></div>\n</dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">__str__()</span></code> method of the model will be called to generate string\nrepresentations of the objects for use in the field's choices. To provide\ncustomized representations, subclass <code class=\"docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code> and override\n<code class=\"docutils literal notranslate\"><span class=\"pre\">label_from_instance</span></code>. This method will receive a model object and should\nreturn a string suitable for representing it. For example:</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.forms</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ModelChoiceField</span>\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyModelChoiceField</span><span class=\"p\">(</span><span class=\"n\">ModelChoiceField</span><span class=\"p\">):</span>\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">label_from_instance</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">,</span> <span class=\"n\">obj</span><span class=\"p\">):</span>\n        <span class=\"k\">return</span> <span class=\"s2\">&quot;My Object #</span><span class=\"si\">%i</span><span class=\"s2\">&quot;</span> <span class=\"o\">%</span> <span class=\"n\">obj</span><span class=\"o\">.</span><span class=\"n\">id</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"modelmultiplechoicefield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ModelMultipleChoiceField</span></code><a class=\"heading-anchor\" href=\"#modelmultiplechoicefield\"><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.forms.ModelMultipleChoiceField\">\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\">ModelMultipleChoiceField</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.forms.ModelMultipleChoiceField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><ul class=\"simple\">\n<li><p>Widget awal: <a class=\"reference internal\" href=\"/id/2.2/ref/forms/widgets/#django.forms.SelectMultiple\" title=\"django.forms.SelectMultiple\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">SelectMultiple</span></code></a></p></li>\n<li><p>Nilai kosong: Sebuah (self.queryset.none()) <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code></p></li>\n<li><p>Normalizes to: A <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code> of model instances.</p></li>\n<li><p>Mensahkan bahwa setiap id dalam daftar yang diberikan dari nilai ada dalam queryset.</p></li>\n<li><p>Kunci pesan kesalahan: <code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">list</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_pk_value</span></code></p></li>\n</ul>\n<p>Pesan <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_choice</span></code> mungkin mengandung <code class=\"docutils literal notranslate\"><span class=\"pre\">%(value)s</span></code> dan pesan <code class=\"docutils literal notranslate\"><span class=\"pre\">invalid_pk_value</span></code> mungkin mengandung <code class=\"docutils literal notranslate\"><span class=\"pre\">%(pk)s</span></code>, yang akan diganti oleh nilai-nilai sesuai.</p>\n<p>Mengizinkan pemilihan satu atau lebih obyek model, cocok untuk mewakili hubungan many-to-many. Seperti dengan <a class=\"reference internal\" href=\"#django.forms.ModelChoiceField\" title=\"django.forms.ModelChoiceField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelChoiceField</span></code></a>, anda dapat menggunakan <code class=\"docutils literal notranslate\"><span class=\"pre\">label_from_instance</span></code> untuk menyesuaikan perwakilan obyek.</p>\n<p>Argumen tunggal dibutuhkan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ModelMultipleChoiceField.queryset\">\n<span class=\"sig-name descname\"><span class=\"pre\">queryset</span></span><a class=\"heading-anchor\" href=\"#django.forms.ModelMultipleChoiceField.queryset\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sama seperti <a class=\"reference internal\" href=\"#django.forms.ModelChoiceField.queryset\" title=\"django.forms.ModelChoiceField.queryset\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">ModelChoiceField.queryset</span></code></a>.</p>\n</dd></dl>\n\n<p>Mengambil satu argumen pilihan:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.forms.ModelMultipleChoiceField.to_field_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">to_field_name</span></span><a class=\"heading-anchor\" href=\"#django.forms.ModelMultipleChoiceField.to_field_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Sama seperti <a class=\"reference internal\" href=\"#django.forms.ModelChoiceField.to_field_name\" title=\"django.forms.ModelChoiceField.to_field_name\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelChoiceField.to_field_name</span></code></a>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n</section>\n<section id=\"creating-custom-fields\">\n<h2>Membuat bidang penyesuaian<a class=\"heading-anchor\" href=\"#creating-custom-fields\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Jika kelas-kelas <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> siap-pakai tidak memenuhi kebutuhan anda, anda dapat dengan mudah membuat kelas-kelas <code class=\"docutils literal notranslate\"><span class=\"pre\">Field</span></code> penyesuaian. Untuk melakukan ini, cukup buat sebuah subkelas dari <code class=\"docutils literal notranslate\"><span class=\"pre\">django.forms.Field</span></code>. Persyaratannya hanya bahwa itu menerapkan metode <code class=\"docutils literal notranslate\"><span class=\"pre\">clean()</span></code> dan dimana metode <code class=\"docutils literal notranslate\"><span class=\"pre\">__init__()</span></code> nya menerima argumen-argumen inti disebutkan diatas (<code class=\"docutils literal notranslate\"><span class=\"pre\">required</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">label</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">initial</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">widget</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">help_text</span></code>).</p>\n<p>Anda dapat juga menyesuaikan bagaimana bidang akan diakses dengan menimpa <a class=\"reference internal\" href=\"/id/2.2/ref/forms/api/#django.forms.Field.get_bound_field\" title=\"django.forms.Field.get_bound_field\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">get_bound_field()</span></code></a>.</p>\n</section>","rootId":"module-django.forms.fields","toc":[{"title":"Argumen bidang inti","anchor":"core-field-arguments","children":[{"title":"required","anchor":"required","children":[]},{"title":"label","anchor":"label","children":[]},{"title":"label_suffix","anchor":"label-suffix","children":[]},{"title":"initial","anchor":"initial","children":[]},{"title":"widget","anchor":"widget","children":[]},{"title":"help_text","anchor":"help-text","children":[]},{"title":"error_messages","anchor":"error-messages","children":[]},{"title":"validators","anchor":"validators","children":[]},{"title":"localize","anchor":"localize","children":[]},{"title":"disabled","anchor":"disabled","children":[]}]},{"title":"Memeriksa jika data bidang telah berubah","anchor":"checking-if-the-field-data-has-changed","children":[{"title":"has_changed()","anchor":"has-changed","children":[]}]},{"title":"KelaS-kelas Field siap-pakai","anchor":"built-in-field-classes","children":[{"title":"BooleanField","anchor":"booleanfield","children":[]},{"title":"CharField","anchor":"charfield","children":[]},{"title":"ChoiceField","anchor":"choicefield","children":[]},{"title":"TypedChoiceField","anchor":"typedchoicefield","children":[]},{"title":"DateField","anchor":"datefield","children":[]},{"title":"DateTimeField","anchor":"datetimefield","children":[]},{"title":"DecimalField","anchor":"decimalfield","children":[]},{"title":"DurationField","anchor":"durationfield","children":[]},{"title":"EmailField","anchor":"emailfield","children":[]},{"title":"FileField","anchor":"filefield","children":[]},{"title":"FilePathField","anchor":"filepathfield","children":[]},{"title":"FloatField","anchor":"floatfield","children":[]},{"title":"ImageField","anchor":"imagefield","children":[]},{"title":"IntegerField","anchor":"integerfield","children":[]},{"title":"GenericIPAddressField","anchor":"genericipaddressfield","children":[]},{"title":"MultipleChoiceField","anchor":"multiplechoicefield","children":[]},{"title":"TypedMultipleChoiceField","anchor":"typedmultiplechoicefield","children":[]},{"title":"NullBooleanField","anchor":"nullbooleanfield","children":[]},{"title":"RegexField","anchor":"regexfield","children":[]},{"title":"SlugField","anchor":"slugfield","children":[]},{"title":"TimeField","anchor":"timefield","children":[]},{"title":"URLField","anchor":"urlfield","children":[]},{"title":"UUIDField","anchor":"uuidfield","children":[]}]},{"title":"Slightly complex built-in Field classes","anchor":"slightly-complex-built-in-field-classes","children":[{"title":"ComboField","anchor":"combofield","children":[]},{"title":"MultiValueField","anchor":"multivaluefield","children":[]},{"title":"SplitDateTimeField","anchor":"splitdatetimefield","children":[]}]},{"title":"Bidang-bidang yang menangani hubungan","anchor":"fields-which-handle-relationships","children":[{"title":"ModelChoiceField","anchor":"modelchoicefield","children":[]},{"title":"ModelMultipleChoiceField","anchor":"modelmultiplechoicefield","children":[]}]},{"title":"Membuat bidang penyesuaian","anchor":"creating-custom-fields","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"Acuan API","url":"/id/2.2/ref/"},{"docname":"ref/forms/index","title":"Formulir","url":"/id/2.2/ref/forms/"}],"prev":{"docname":"ref/forms/api","title":"API Formulir","url":"/id/2.2/ref/forms/api/"},"next":{"docname":"ref/forms/models","title":"Fungsi Formulir Model","url":"/id/2.2/ref/forms/models/"},"formats":{"html":"/id/2.2/ref/forms/fields/","markdown":"/id/2.2/ref/forms/fields.md","json":"/id/2.2/ref/forms/fields.json"},"source":"https://github.com/django/django/blob/stable/2.2.x/docs/ref/forms/fields.txt","official":"https://docs.djangoproject.com/id/2.2/ref/forms/fields/","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"]}