Итак, перед добавлением нескольких столбцов у меня были имя пользователя, пароль и адрес электронной почты, и все работало нормально.Но когда я попытался добавить еще несколько вещей, таких как возраст, пол, телефон и адрес, я получил эту ошибку:
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such table: user [SQL: 'SELECT user.id AS user_id, user.username AS user_username, user.email AS user_email, user.password AS user_password, user.age AS user_age, user.gender AS user_gender, user.phone AS user_phone, user.address AS user_address \nFROM user \nWHERE user.username = ?\n LIMIT ? OFFSET ?'] [parameters: ('agam-kashyap', 1, 0)] (Background on this error at: http://sqlalche.me/e/e3q8)
Ошибка, кажется, в следующих строках:
@app.route("/register",methods = ['GET','POST'])
def register():
form = RegistrationForm()
if form.validate_on_submit():
user = User(username=form.username.data, email = form.email.data, password = form.password.data, age = form.age.data, gender = form.gender.data, phone = form.phone.data, address = form.address.data)
db.create_all()
db.session.add(user)
db.session.commit()
return redirect(url_for('login'))
return render_template('register.html', title= 'Register' , form = form)
Кроме того, вот мой класс пользователя:
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(20), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
password = db.Column(db.String(60), nullable=False)
age = db.Column(db.String(3), nullable=False)
gender = db.Column(db.String(6), nullable=False)
phone = db.Column(db.String(10), nullable=False)
address = db.Column(db.String(200), nullable=False)
Как я могу решить эту проблему?