Я хочу добавить опцию в мою модель пользователя, которую пользователь может выбрать с помощью comboBox при регистрации.На странице регистрации все в порядке, но я получаю сообщение об ошибке, когда я делаю запрос POST для регистрации.
Когда я пытаюсь зарегистрировать пользователя, я получаю сообщение об ошибке "('favour_music' является недопустимым аргументом ключевого словадля этой функции). "* views.py
def register(request):
form = RegisterForm(request.POST or None)
if form.is_valid():
username = form.cleaned_data.get("username")
password = form.cleaned_data.get("password")
email = form.cleaned_data.get("email")
favorite_music = form.cleaned_data.get("favorite_music")
registeredUser = User(username = username, email = email,favorite_music = favorite_music)
registeredUser.set_password(password)
registeredUser.save()
login(request, registeredUser)
return redirect("index")
context = {
"form" : form
}
return render(request,"register.html",context)
admin.py
User = get_user_model()
class UserAdmin(BaseUserAdmin):
form = UserAdminChangeForm
add_form = UserAdminCreationForm
# The fields to be used in displaying the User model.
# These override the definitions on the base UserAdmin
# that reference specific fields on auth.User.
list_display = ('username','email', 'admin')
list_filter = ('admin','staff','active','favorite_music')
fieldsets = (
('User info', {'fields': ('username','email', 'password')}),
('Personal info', {'fields': ('full_name','favorite_music')}),
('Permissions', {'fields': ('admin','staff','active')}),
)
# add_fieldsets is not a standard ModelAdmin attribute. UserAdmin
# overrides get_fieldsets to use this attribute when creating a user.
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('username','email', 'password1', 'password2','active','staff','admin')}
),
)
search_fields = ('email','username','favorite_music','full_name')
ordering = ('email',)
filter_horizontal = ()
admin.site.register(User, UserAdmin)
admin.site.unregister(Group)