当我尝试向数据库添加数据时出现错误。我已经建立了数据库和它的应用程序
class User(db.Model):
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(120),nullable = False)
email = db.Column(db.String(70),primary_key=True,nullable = False)
post = db.Column(db.String(10000),default ="")
date_created = db.Column(db.DateTime, default = datetime.utcnow)
def __repr__(self):
return f'{self.id},{self.name},{self.email},{self.post},{self.date_created}'
每当我尝试在下面的代码中创建数据库时,我都会遇到问题:
@app.route('/sign_up',methods = ["POST","GET"])
def sign_up():
if request.method == 'POST':
email = request.form.get('email')
first_name = request.form.get('first_name')
password_1 = request.form.get('password')
password_2 = request.form.get('password-2')
user = User.query.filter_by(email=email).first()
if user:
flash("Email aleady exists", category = 'error')
elif len(email) < 5:
flash("Email name must be greater than 5 characters", category='error')
# We'll come back to you tomorrow (i.e 25th March)
elif len(first_name) < 2:
flash("First Name too short",category='error')
elif password_1 != password_2:
flash("Make sure you typed the password correctly",category='error')
elif len(password_1) < 8:
flash("Make sure your password as at least 8 characters", category='error')
else:
new_user = User(name= first_name,email = email)
db.session.add(new_user)
db.session.commit()
flash("Account Created",category='success')
return redirect(url_for('home'))
return render_template("sign-up.html")
答案 0 :(得分:0)
在 Postgresql 中更新表。使 ID 自动递增。
或为 id 提供数据(已弃用)