私はユーザー名に電子メールを使用しようとしています。私はこれらの指示に従いました:http://www.micahcarrick.com/django-email-authentication.htmlユーザー名を30文字以上にするDjangoログインフォーム
問題は、私のログインフォームは依然としてユーザー名が30文字しかないというエラーを投げています。 75文字を受け入れるように入力フォームを変更し、データベーステーブルも変更しました。しかし、Djangoの何かがこれをまだブロックしています。
アイデア?
UPDATE:
<form method="post" action="." class="full">
{% csrf_token %}
<ul>
{% if form.non_field_errors %}<li>{{ form.non_field_errors }}</li>{% endif %}
<li>
{{ form.username.errors }}
<label for="id_username">Email/Username</label>
<input type="text" id="id_username" name="username" maxlength="75">
</li>
<li>
{{ form.password.errors }}
<label for="id_password">{{ form.password.label }}</label>
{{ form.password }}
</li>
</ul>
<input type="submit" value="Login">
<a href="{% url django.contrib.auth.views.password_reset %}">Forgot your password?</a>
</form>
@Brenden:正確にあなたが使用している、改版 'Form'には何ですか?フォームクラスを含める**質問**を更新してください。長い入力を切り捨てる 'クリーン'メソッドがありますか? –
チェックするだけで、django.contrib.auth.models.Userのユーザー名フィールドの長さを30から75に変更した後、dbから古いauthテーブルを削除し、新しいSQLを取得してmanageを実行してauthテーブルを作成します。 py sqlallを実行し、このSQLを実行して、更新されたフィールド長を持つ新しいテーブルを作成しますか? –