gpt4 book ai didi

python - 在用户表单 django 中设置默认值

转载 作者:行者123 更新时间:2023-12-01 09:16:59 25 4
gpt4 key购买 nike

我需要在用户表单中添加一个额外的默认值,但不会向用户询问,默认情况下它会保存在每个用户的数据中,但我该怎么做?这是我的表格

from django import forms
from django.contrib.auth.models import User


class UserForm(forms.ModelForm):
password = forms.CharField(widget=forms.PasswordInput, min_length=6)
confirm_password = forms.CharField(widget=forms.PasswordInput(), min_length=6)
first_name = forms.CharField(max_length=30)
last_name = forms.CharField(max_length=30)
email = forms.EmailField(max_length=254)

最佳答案

我想我明白你在问什么。如果您要使用 ModelForm,您应该在此处了解类元:如何适用于 ModelForm这应该可以帮助您开始在表单中添加一个附加字段。如果您要向用户模型添加一些额外的数据,您将需要使用 AbstractUser 扩展用户模型。并添加“additional_field”。

from django import forms
from django.contrib.auth.models import User


class UserForm(forms.ModelForm):
password = forms.CharField(widget=forms.PasswordInput, min_length=6)
confirm_password = forms.CharField(widget=forms.PasswordInput(), min_length=6)
first_name = forms.CharField(max_length=30)
last_name = forms.CharField(max_length=30)
email = forms.EmailField(max_length=254)
additional_field = forms.CharField(max_length=100)

def __init__(self, *args, **kwargs):
super(UserForm, self).__init__(*args, **kwargs)
self.fields['additional_field'].disabled = True
self.fields['additional_field'].initial = 'SOME INITIAL VALUE'

关于python - 在用户表单 django 中设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51162146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com