{"title":"Validadores","version":"5.2","locale":"pt-br","docname":"ref/validators","url":"/pt-br/5.2/ref/validators/","canonical":"https://djangodocs.dev/pt-br/5.2/ref/validators/","summary":"Writing validators Link para este cabeçalho # A validator is a callable that takes a value and raises a ValidationError if it doesn’t meet some criteria. Validators…","html":"<span id=\"validators\"></span><h1>Validadores<a class=\"heading-anchor\" href=\"#module-django.core.validators\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"writing-validators\">\n<h2>Writing validators<a class=\"heading-anchor\" href=\"#writing-validators\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>A validator is a callable that takes a value and raises a\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if it doesn’t meet some\ncriteria. Validators can be useful for reusing validation logic between\ndifferent types of fields.</p>\n<p>For example, here’s a validator that only allows even numbers:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.core.exceptions</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ValidationError</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.utils.translation</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">gettext_lazy</span> <span class=\"k\">as</span> <span class=\"n\">_</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">validate_even</span><span class=\"p\">(</span><span class=\"n\">value</span><span class=\"p\">):</span>\n    <span class=\"k\">if</span> <span class=\"n\">value</span> <span class=\"o\">%</span> <span class=\"mi\">2</span> <span class=\"o\">!=</span> <span class=\"mi\">0</span><span class=\"p\">:</span>\n        <span class=\"k\">raise</span> <span class=\"n\">ValidationError</span><span class=\"p\">(</span>\n            <span class=\"n\">_</span><span class=\"p\">(</span><span class=\"s2\">&quot;</span><span class=\"si\">%(value)s</span><span class=\"s2\"> is not an even number&quot;</span><span class=\"p\">),</span>\n            <span class=\"n\">params</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s2\">&quot;value&quot;</span><span class=\"p\">:</span> <span class=\"n\">value</span><span class=\"p\">},</span>\n        <span class=\"p\">)</span>\n</code></pre></div>\n<p>You can add this to a model field via the field’s <a class=\"reference internal\" href=\"/pt-br/5.2/ref/models/fields/#django.db.models.Field.validators\" title=\"django.db.models.Field.validators\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">validators</span></code></a>\nargument:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">models</span>\n\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyModel</span><span class=\"p\">(</span><span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">Model</span><span class=\"p\">):</span>\n    <span class=\"n\">even_field</span> <span class=\"o\">=</span> <span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">IntegerField</span><span class=\"p\">(</span><span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">validate_even</span><span class=\"p\">])</span>\n</code></pre></div>\n<p>Because values are converted to Python before validators are run, you can even\nuse the same validator with forms:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">forms</span>\n\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyForm</span><span class=\"p\">(</span><span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">Form</span><span class=\"p\">):</span>\n    <span class=\"n\">even_field</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">IntegerField</span><span class=\"p\">(</span><span class=\"n\">validators</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"n\">validate_even</span><span class=\"p\">])</span>\n</code></pre></div>\n<p>You can also use a class with a <code class=\"docutils literal notranslate\"><span class=\"pre\">__call__()</span></code> method for more complex or\nconfigurable validators. <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a>, for example, uses this\ntechnique. If a class-based validator is used in the\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/models/fields/#django.db.models.Field.validators\" title=\"django.db.models.Field.validators\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">validators</span></code></a> model field option, you should make\nsure it is <a class=\"reference internal\" href=\"/pt-br/5.2/topics/migrations/#migration-serializing\"><span class=\"std std-ref\">serializable by the migration framework</span></a> by adding <a class=\"reference internal\" href=\"/pt-br/5.2/topics/migrations/#custom-deconstruct-method\"><span class=\"std std-ref\">deconstruct()</span></a> and <code class=\"docutils literal notranslate\"><span class=\"pre\">__eq__()</span></code> methods.</p>\n</section>\n<section id=\"how-validators-are-run\">\n<h2>How validators are run<a class=\"heading-anchor\" href=\"#how-validators-are-run\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>See the <a class=\"reference internal\" href=\"/pt-br/5.2/ref/forms/validation/\"><span class=\"doc\">form validation</span></a> for more information on\nhow validators are run in forms, and <a class=\"reference internal\" href=\"/pt-br/5.2/ref/models/instances/#validating-objects\"><span class=\"std std-ref\">Validating objects</span></a> for how they’re run in models. Note that validators will\nnot be run automatically when you save a model, but if you are using a\n<a class=\"reference internal\" href=\"/pt-br/5.2/topics/forms/modelforms/#django.forms.ModelForm\" title=\"django.forms.ModelForm\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ModelForm</span></code></a>, it will run your validators on any fields\nthat are included in your form. See the\n<a class=\"reference internal\" href=\"/pt-br/5.2/topics/forms/modelforms/\"><span class=\"doc\">ModelForm documentation</span></a> for information on\nhow model validation interacts with forms.</p>\n</section>\n<section id=\"built-in-validators\">\n<h2>Built-in validators<a class=\"heading-anchor\" href=\"#built-in-validators\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>The <a class=\"reference internal\" href=\"#module-django.core.validators\" title=\"django.core.validators: Validation utilities and base classes\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.core.validators</span></code></a> module contains a collection of callable\nvalidators for use with model and form fields. They’re used internally but\nare available for use with your own fields, too. They can be used in addition\nto, or in lieu of custom <code class=\"docutils literal notranslate\"><span class=\"pre\">field.clean()</span></code> methods.</p>\n<section id=\"regexvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code><a class=\"heading-anchor\" href=\"#regexvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">RegexValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">regex</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">inverse_match</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">flags</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">0</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><dl class=\"field-list simple\">\n<dt class=\"field-odd\">Parâmetros<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>regex</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>. Can be a regular\nexpression string or a pre-compiled regular expression.</p></li>\n<li><p><strong>message</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.message\" title=\"django.core.validators.RegexValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a>.</p></li>\n<li><p><strong>code</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.code\" title=\"django.core.validators.RegexValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a>.</p></li>\n<li><p><strong>inverse_match</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.inverse_match\" title=\"django.core.validators.RegexValidator.inverse_match\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">inverse_match</span></code></a>.</p></li>\n<li><p><strong>flags</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.flags\" title=\"django.core.validators.RegexValidator.flags\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">flags</span></code></a>. In that case,\n<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a> must be a regular expression string, or\n<a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#TypeError\" title=\"(em Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">TypeError</span></code></a> is raised.</p></li>\n</ul>\n</dd>\n</dl>\n<p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> searches the provided <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> for a given\nregular expression with <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.search\" title=\"(em Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.search()</span></code></a>. By default, raises a\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.message\" title=\"django.core.validators.RegexValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> and\n<a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.code\" title=\"django.core.validators.RegexValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> if a match <strong>is not</strong> found. Its behavior can be inverted by\nsetting <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.inverse_match\" title=\"django.core.validators.RegexValidator.inverse_match\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">inverse_match</span></code></a> to <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, in which case the\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> is raised when a match\n<strong>is</strong> found.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.regex\">\n<span class=\"sig-name descname\"><span class=\"pre\">regex</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.regex\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The regular expression pattern to search for within the provided\n<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code>, using <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.search\" title=\"(em Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.search()</span></code></a>. This may be a string or a\npre-compiled regular expression created with <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#re.compile\" title=\"(em Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">re.compile()</span></code></a>.\nDefaults to the empty string, which will be found in every possible\n<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.message\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error message used by\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if validation fails.\nDefaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Enter</span> <span class=\"pre\">a</span> <span class=\"pre\">valid</span> <span class=\"pre\">value&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.code\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error code used by <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a>\nif validation fails. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;invalid&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.inverse_match\">\n<span class=\"sig-name descname\"><span class=\"pre\">inverse_match</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.inverse_match\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The match mode for <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.RegexValidator.flags\">\n<span class=\"sig-name descname\"><span class=\"pre\">flags</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.RegexValidator.flags\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The <a class=\"reference external\" href=\"https://docs.python.org/3/library/re.html#contents-of-module-re\" title=\"(em Python v3.14)\"><span class=\"xref std std-ref\">regex flags</span></a> used when\ncompiling the regular expression string <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>. If <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.regex\" title=\"django.core.validators.RegexValidator.regex\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">regex</span></code></a>\nis a pre-compiled regular expression, and <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator.flags\" title=\"django.core.validators.RegexValidator.flags\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">flags</span></code></a> is overridden,\n<a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#TypeError\" title=\"(em Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">TypeError</span></code></a> is raised. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">0</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"emailvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">EmailValidator</span></code><a class=\"heading-anchor\" href=\"#emailvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">EmailValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allowlist</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><dl class=\"field-list simple\">\n<dt class=\"field-odd\">Parâmetros<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>message</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.message\" title=\"django.core.validators.EmailValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a>.</p></li>\n<li><p><strong>code</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.code\" title=\"django.core.validators.EmailValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a>.</p></li>\n<li><p><strong>allowlist</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.allowlist\" title=\"django.core.validators.EmailValidator.allowlist\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">allowlist</span></code></a>.</p></li>\n</ul>\n</dd>\n</dl>\n<p>An <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator\" title=\"django.core.validators.EmailValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">EmailValidator</span></code></a> ensures that a value looks like an email, and\nraises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with\n<a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.message\" title=\"django.core.validators.EmailValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a> and <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator.code\" title=\"django.core.validators.EmailValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a> if it doesn’t. Values longer than 320\ncharacters are always considered invalid.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.message\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error message used by\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if validation fails.\nDefaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Enter</span> <span class=\"pre\">a</span> <span class=\"pre\">valid</span> <span class=\"pre\">email</span> <span class=\"pre\">address&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.code\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error code used by <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a>\nif validation fails. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;invalid&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.EmailValidator.allowlist\">\n<span class=\"sig-name descname\"><span class=\"pre\">allowlist</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.EmailValidator.allowlist\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Allowlist of email domains. By default, a regular expression (the\n<code class=\"docutils literal notranslate\"><span class=\"pre\">domain_regex</span></code> attribute) is used to validate whatever appears after\nthe <code class=\"docutils literal notranslate\"><span class=\"pre\">&#64;</span></code> sign. However, if that string appears in the <code class=\"docutils literal notranslate\"><span class=\"pre\">allowlist</span></code>,\nthis validation is bypassed. If not provided, the default <code class=\"docutils literal notranslate\"><span class=\"pre\">allowlist</span></code>\nis <code class=\"docutils literal notranslate\"><span class=\"pre\">['localhost']</span></code>. Other domains that don’t contain a dot won’t pass\nvalidation, so you’d need to add them to the <code class=\"docutils literal notranslate\"><span class=\"pre\">allowlist</span></code> as\nnecessary.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"domainnamevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DomainNameValidator</span></code><a class=\"heading-anchor\" href=\"#domainnamevalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<aside class=\"version-note version-added\" data-version=\"5.1\">\n<p class=\"version-note-title\">New in Django 5.1</p></aside>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.DomainNameValidator\">\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\">DomainNameValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">accept_idna</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">True</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.DomainNameValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> subclass that ensures a value looks like a domain\nname. Values longer than 255 characters are always considered invalid. IP\naddresses are not accepted as valid domain names.</p>\n<p>In addition to the optional arguments of its parent <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a>\nclass, <code class=\"docutils literal notranslate\"><span class=\"pre\">DomainNameValidator</span></code> accepts an extra optional attribute:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.DomainNameValidator.accept_idna\">\n<span class=\"sig-name descname\"><span class=\"pre\">accept_idna</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.DomainNameValidator.accept_idna\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Determines whether to accept internationalized domain names, that is,\ndomain names that contain non-ASCII characters. Defaults to <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=\"urlvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">URLValidator</span></code><a class=\"heading-anchor\" href=\"#urlvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.URLValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">URLValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">schemes</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">regex</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.URLValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> subclass that ensures a value looks like a URL,\nand raises an error code of <code class=\"docutils literal notranslate\"><span class=\"pre\">'invalid'</span></code> if it doesn’t. Values longer than\n<a class=\"reference internal\" href=\"#django.core.validators.URLValidator.max_length\" title=\"django.core.validators.URLValidator.max_length\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">max_length</span></code></a> characters are always considered invalid.</p>\n<p>Loopback addresses and reserved IP spaces are considered valid. Literal\nIPv6 addresses (<span class=\"target\" id=\"index-0\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc3986.html#section-3.2.2\"><strong>RFC 3986 Section 3.2.2</strong></a>) and Unicode domains are both\nsupported.</p>\n<p>In addition to the optional arguments of its parent <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a>\nclass, <code class=\"docutils literal notranslate\"><span class=\"pre\">URLValidator</span></code> accepts an extra optional attribute:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.URLValidator.schemes\">\n<span class=\"sig-name descname\"><span class=\"pre\">schemes</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.URLValidator.schemes\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>URL/URI scheme list to validate against. If not provided, the default\nlist is <code class=\"docutils literal notranslate\"><span class=\"pre\">['http',</span> <span class=\"pre\">'https',</span> <span class=\"pre\">'ftp',</span> <span class=\"pre\">'ftps']</span></code>. As a reference, the IANA\nwebsite provides a full list of <a class=\"reference external\" href=\"https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml\">valid URI schemes</a>.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Aviso</p>\n<p>Values starting with <code class=\"docutils literal notranslate\"><span class=\"pre\">file:///</span></code> will not pass validation even\nwhen the <code class=\"docutils literal notranslate\"><span class=\"pre\">file</span></code> scheme is provided. Valid values must contain a\nhost.</p>\n</aside>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.URLValidator.max_length\">\n<span class=\"sig-name descname\"><span class=\"pre\">max_length</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.URLValidator.max_length\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The maximum length of values that could be considered valid. Defaults\nto 2048 characters.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"validate-email\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_email</span></code><a class=\"heading-anchor\" href=\"#validate-email\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_email\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_email</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_email\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>An <a class=\"reference internal\" href=\"#django.core.validators.EmailValidator\" title=\"django.core.validators.EmailValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">EmailValidator</span></code></a> instance without any customizations.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-domain-name\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_domain_name</span></code><a class=\"heading-anchor\" href=\"#validate-domain-name\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<aside class=\"version-note version-added\" data-version=\"5.1\">\n<p class=\"version-note-title\">New in Django 5.1</p></aside>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_domain_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_domain_name</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_domain_name\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.DomainNameValidator\" title=\"django.core.validators.DomainNameValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">DomainNameValidator</span></code></a> instance without any customizations.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-slug\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_slug</span></code><a class=\"heading-anchor\" href=\"#validate-slug\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_slug\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_slug</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_slug\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value consists of only\nletters, numbers, underscores or hyphens.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-unicode-slug\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_unicode_slug</span></code><a class=\"heading-anchor\" href=\"#validate-unicode-slug\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_unicode_slug\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_unicode_slug</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_unicode_slug\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value consists of only\nUnicode letters, numbers, underscores, or hyphens.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv4-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv4_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv4-address\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv4_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv4_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv4_address\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value looks like an IPv4\naddress.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv6-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv6_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv6-address\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv6_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv6_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv6_address\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.ipv6</span></code> to check the validity of an IPv6 address.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-ipv46-address\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv46_address</span></code><a class=\"heading-anchor\" href=\"#validate-ipv46-address\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_ipv46_address\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_ipv46_address</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_ipv46_address\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses both <code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv4_address</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">validate_ipv6_address</span></code> to\nensure a value is either a valid IPv4 or IPv6 address.</p>\n</dd></dl>\n\n</section>\n<section id=\"validate-comma-separated-integer-list\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_comma_separated_integer_list</span></code><a class=\"heading-anchor\" href=\"#validate-comma-separated-integer-list\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_comma_separated_integer_list\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_comma_separated_integer_list</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_comma_separated_integer_list\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>A <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a value is a\ncomma-separated list of integers.</p>\n</dd></dl>\n\n</section>\n<section id=\"int-list-validator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">int_list_validator</span></code><a class=\"heading-anchor\" href=\"#int-list-validator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.int_list_validator\">\n<span class=\"sig-name descname\"><span class=\"pre\">int_list_validator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">sep</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">','</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'invalid'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allow_negative</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.int_list_validator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returns a <a class=\"reference internal\" href=\"#django.core.validators.RegexValidator\" title=\"django.core.validators.RegexValidator\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RegexValidator</span></code></a> instance that ensures a string consists\nof integers separated by <code class=\"docutils literal notranslate\"><span class=\"pre\">sep</span></code>. It allows negative integers when\n<code class=\"docutils literal notranslate\"><span class=\"pre\">allow_negative</span></code> is <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"maxvaluevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MaxValueValidator</span></code><a class=\"heading-anchor\" href=\"#maxvaluevalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MaxValueValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MaxValueValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MaxValueValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'max_value'</span></code> if <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is greater than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be\na callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"minvaluevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MinValueValidator</span></code><a class=\"heading-anchor\" href=\"#minvaluevalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MinValueValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MinValueValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MinValueValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'min_value'</span></code> if <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is less than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be a\ncallable.</p>\n</dd></dl>\n\n</section>\n<section id=\"maxlengthvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MaxLengthValidator</span></code><a class=\"heading-anchor\" href=\"#maxlengthvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MaxLengthValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MaxLengthValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MaxLengthValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'max_length'</span></code> if the length of <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is greater than\n<code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which may be a callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"minlengthvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MinLengthValidator</span></code><a class=\"heading-anchor\" href=\"#minlengthvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.MinLengthValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MinLengthValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.MinLengthValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'min_length'</span></code> if the length of <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is less than <code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>,\nwhich may be a callable.</p>\n</dd></dl>\n\n</section>\n<section id=\"decimalvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">DecimalValidator</span></code><a class=\"heading-anchor\" href=\"#decimalvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.DecimalValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">DecimalValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">max_digits</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">decimal_places</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.DecimalValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with the following\ncodes:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_digits'</span></code> if the number of digits is larger than <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_decimal_places'</span></code> if the number of decimals is larger than\n<code class=\"docutils literal notranslate\"><span class=\"pre\">decimal_places</span></code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">'max_whole_digits'</span></code> if the number of whole digits is larger than\nthe difference between <code class=\"docutils literal notranslate\"><span class=\"pre\">max_digits</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">decimal_places</span></code>.</p></li>\n</ul>\n</dd></dl>\n\n</section>\n<section id=\"fileextensionvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">FileExtensionValidator</span></code><a class=\"heading-anchor\" href=\"#fileextensionvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.FileExtensionValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">FileExtensionValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allowed_extensions</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.FileExtensionValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'invalid_extension'</span></code> if the extension of <code class=\"docutils literal notranslate\"><span class=\"pre\">value.name</span></code> (<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is\na <a class=\"reference internal\" href=\"/pt-br/5.2/ref/files/file/#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>) isn’t found in <code class=\"docutils literal notranslate\"><span class=\"pre\">allowed_extensions</span></code>.\nThe extension is compared case-insensitively with <code class=\"docutils literal notranslate\"><span class=\"pre\">allowed_extensions</span></code>.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Aviso</p>\n<p>Don’t rely on validation of the file extension to determine a file’s\ntype. Files can be renamed to have any extension no matter what data\nthey contain.</p>\n</aside>\n</dd></dl>\n\n</section>\n<section id=\"validate-image-file-extension\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">validate_image_file_extension</span></code><a class=\"heading-anchor\" href=\"#validate-image-file-extension\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py data\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.validate_image_file_extension\">\n<span class=\"sig-name descname\"><span class=\"pre\">validate_image_file_extension</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.validate_image_file_extension\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Uses Pillow to ensure that <code class=\"docutils literal notranslate\"><span class=\"pre\">value.name</span></code> (<code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is a\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/files/file/#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>) has <a class=\"reference external\" href=\"https://pillow.readthedocs.io/en/latest/handbook/image-file-formats.html\">a valid image extension</a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"prohibitnullcharactersvalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">ProhibitNullCharactersValidator</span></code><a class=\"heading-anchor\" href=\"#prohibitnullcharactersvalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">ProhibitNullCharactersValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">code</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if <code class=\"docutils literal notranslate\"><span class=\"pre\">str(value)</span></code>\ncontains one or more null characters (<code class=\"docutils literal notranslate\"><span class=\"pre\">'\\x00'</span></code>).</p>\n<dl class=\"field-list simple\">\n<dt class=\"field-odd\">Parâmetros<span class=\"colon\">:</span></dt>\n<dd class=\"field-odd\"><ul class=\"simple\">\n<li><p><strong>message</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.ProhibitNullCharactersValidator.message\" title=\"django.core.validators.ProhibitNullCharactersValidator.message\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">message</span></code></a>.</p></li>\n<li><p><strong>code</strong> – If not <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, overrides <a class=\"reference internal\" href=\"#django.core.validators.ProhibitNullCharactersValidator.code\" title=\"django.core.validators.ProhibitNullCharactersValidator.code\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">code</span></code></a>.</p></li>\n</ul>\n</dd>\n</dl>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator.message\">\n<span class=\"sig-name descname\"><span class=\"pre\">message</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator.message\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error message used by\n<a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> if validation fails.\nDefaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Null</span> <span class=\"pre\">characters</span> <span class=\"pre\">are</span> <span class=\"pre\">not</span> <span class=\"pre\">allowed.&quot;</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.ProhibitNullCharactersValidator.code\">\n<span class=\"sig-name descname\"><span class=\"pre\">code</span></span><a class=\"heading-anchor\" href=\"#django.core.validators.ProhibitNullCharactersValidator.code\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The error code used by <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a>\nif validation fails. Defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;null_characters_not_allowed&quot;</span></code>.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"stepvaluevalidator\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">StepValueValidator</span></code><a class=\"heading-anchor\" href=\"#stepvaluevalidator\"><span class=\"visually-hidden\">Link para este cabeçalho</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.validators.StepValueValidator\">\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\">StepValueValidator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">limit_value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">offset</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.validators.StepValueValidator\"><span class=\"visually-hidden\">Link para esta definição</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Raises a <a class=\"reference internal\" href=\"/pt-br/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a> with a code of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">'step_size'</span></code> if <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> is not an integral multiple of\n<code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code>, which can be a float, integer or decimal value or a\ncallable. When <code class=\"docutils literal notranslate\"><span class=\"pre\">offset</span></code> is set, the validation occurs against\n<code class=\"docutils literal notranslate\"><span class=\"pre\">limit_value</span></code> plus <code class=\"docutils literal notranslate\"><span class=\"pre\">offset</span></code>. For example, for\n<code class=\"docutils literal notranslate\"><span class=\"pre\">StepValueValidator(3,</span> <span class=\"pre\">offset=1.4)</span></code> valid values include <code class=\"docutils literal notranslate\"><span class=\"pre\">1.4</span></code>,\n<code class=\"docutils literal notranslate\"><span class=\"pre\">4.4</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">7.4</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">10.4</span></code>, and so on.</p>\n</dd></dl>\n\n</section>\n</section>","rootId":"module-django.core.validators","toc":[{"title":"Writing validators","anchor":"writing-validators","children":[]},{"title":"How validators are run","anchor":"how-validators-are-run","children":[]},{"title":"Built-in validators","anchor":"built-in-validators","children":[{"title":"RegexValidator","anchor":"regexvalidator","children":[]},{"title":"EmailValidator","anchor":"emailvalidator","children":[]},{"title":"DomainNameValidator","anchor":"domainnamevalidator","children":[]},{"title":"URLValidator","anchor":"urlvalidator","children":[]},{"title":"validate_email","anchor":"validate-email","children":[]},{"title":"validate_domain_name","anchor":"validate-domain-name","children":[]},{"title":"validate_slug","anchor":"validate-slug","children":[]},{"title":"validate_unicode_slug","anchor":"validate-unicode-slug","children":[]},{"title":"validate_ipv4_address","anchor":"validate-ipv4-address","children":[]},{"title":"validate_ipv6_address","anchor":"validate-ipv6-address","children":[]},{"title":"validate_ipv46_address","anchor":"validate-ipv46-address","children":[]},{"title":"validate_comma_separated_integer_list","anchor":"validate-comma-separated-integer-list","children":[]},{"title":"int_list_validator","anchor":"int-list-validator","children":[]},{"title":"MaxValueValidator","anchor":"maxvaluevalidator","children":[]},{"title":"MinValueValidator","anchor":"minvaluevalidator","children":[]},{"title":"MaxLengthValidator","anchor":"maxlengthvalidator","children":[]},{"title":"MinLengthValidator","anchor":"minlengthvalidator","children":[]},{"title":"DecimalValidator","anchor":"decimalvalidator","children":[]},{"title":"FileExtensionValidator","anchor":"fileextensionvalidator","children":[]},{"title":"validate_image_file_extension","anchor":"validate-image-file-extension","children":[]},{"title":"ProhibitNullCharactersValidator","anchor":"prohibitnullcharactersvalidator","children":[]},{"title":"StepValueValidator","anchor":"stepvaluevalidator","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"Referência da API","url":"/pt-br/5.2/ref/"}],"prev":{"docname":"ref/utils","title":"Django Utils","url":"/pt-br/5.2/ref/utils/"},"next":{"docname":"ref/views","title":"Built-in Views","url":"/pt-br/5.2/ref/views/"},"formats":{"html":"/pt-br/5.2/ref/validators/","markdown":"/pt-br/5.2/ref/validators.md","json":"/pt-br/5.2/ref/validators.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/ref/validators.txt","official":"https://docs.djangoproject.com/pt-br/5.2/ref/validators/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}