У меня проблема при использовании HiddenField , я не могу получить данные из него, форма отображается правильно
{{form.user_id(value=user.id)}}
class EditUserForm(FlaskForm):
username = StringField("Username", validators=[
DataRequired(), Length(min=5, max=20)])
email = StringField("Email", validators=[Email()])
password = PasswordField("Password", validators=[DataRequired()])
password_confirmation = PasswordField("Confirm Password", validators=
[EqualTo('password')])
role = SelectField('Role',
choices=[(Role.name, Role.value)
for Role in Roles],
default=Roles.admin.value)
user_id = HiddenField("user.id")
submit = SubmitField("Save")
def validate_username(self, username):
#run validation only if the username has changed
user = User.query.get(self.user_id.data)
if username.data != user.username:
user = User.query.filter_by(username=username.data).first()
if user:
raise ValidationError(f"{self.username.data} is already taken")
def validate_email(self, email):
#run validation only if the email has changed
user = User.query.get(self.user_id.data)
if email.data != user.email:
email = User.query.filter_by(email=email.data).first()
if email:
raise ValidationError(f"{self.email.data} is already taken")
, когда я пытался использовать StringField и установите type = "hidden"
{{form.user_id(type="hidden, value=user.id)}}
он работает