ユーザー名の代わりに電子メールでログインするように Django 1.5 (djangoproject docs から) 認証をカスタマイズしましたが、Django-registration 1.0 を使用してユーザーを登録しています。
ユーザーが登録時に電子メールとパスワードを入力するだけで済むように、django 登録からユーザー名フィールドを削除するにはどうすればよいですか。
よろしくお願いします。ヤニフ M
ユーザー名の代わりに電子メールでログインするように Django 1.5 (djangoproject docs から) 認証をカスタマイズしましたが、Django-registration 1.0 を使用してユーザーを登録しています。
ユーザーが登録時に電子メールとパスワードを入力するだけで済むように、django 登録からユーザー名フィールドを削除するにはどうすればよいですか。
よろしくお願いします。ヤニフ M
これで始められるはずです。RegistrationForm のサブクラスである独自のフォームを作成します。
forms.py で
from registration.forms import RegistrationForm
class MyRegistrationForm(RegistrationForm):
# Override RegistrationForm
def __init__(self, *args, **kwargs):
super(RegistrationForm, self).__init__(*args, **kwargs)
self.fields.pop('username')
views.py で
from registration.views import RegistrationView
from yourapp.forms import MyRegistrationForm
class MyRegistrationView(RegistrationView):
form_class = MyRegistrationForm
urls.py で
url(r'^accounts/register/$', MyRegistrationView.as_view(),
name='registration'),
デフォルトに基づいてカスタム フォーム クラスを作成し、RegistrationForm
そのクラスをRegistrationView
ビューで使用できます。
そのままでは、複雑です。必要がある: