Ошибка каждый раз, когда я отправляю это в базу данных из моего приложения flask - PullRequest
0 голосов
/ 27 марта 2020

Это использует Flask framework, я получаю эту ошибку, когда пытаюсь отправить данные в базу данных, созданную мной через sqlite. Вот моя модель базы данных, а также модель формы.

firstname = StringField('First Name', validators=[InputRequired(), Length(min=2, max=30)])
    lastname = StringField('Last Name', validators=[InputRequired(), Length(min=2, max=30)])
    username = StringField('Username', validators=[InputRequired(), Length(min=4, max=40)])
    password = PasswordField('Password', validators=[InputRequired(), Length(min=4, max=40)])
    email = StringField('Email', validators=[InputRequired(), Email(message='Invalid Email'), Length(max=120)])

Это данные формы wtforms, вот модель базы данных:

class usersTable(db.Model):
    userid = db.Column(db.Integer, primary_key=True)
    fname = db.Column(db.String, nullable=False)
    lname = db.Column(db.String, nullable=False)
    email = db.Column(db.LargeBinary, unique=True, nullable=False)
    username = db.Column(db.LargeBinary, unique=True, nullable=False)
    password = db.Column(db.LargeBinary, nullable=False)

По какой-то причине, когда я отправить это я получаю эту ошибку сервера. Он продолжает говорить, что это должны быть байты, а не 'str'? Может кто-нибудь пролить свет на эту

ошибку:

a bytes-like object is required, not 'str'

1 Ответ

2 голосов
/ 27 марта 2020

Ваши поля электронной почты, имя пользователя и пароль должны быть db.String

...