你好,我的 sqlalchemy 不會提交,我很確定我的代碼是正確的,但我不知道為什么它不會提交
class Movie(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(80), unique=True, nullable=False)
year = db.Column(db.String(80), nullable=False)
description = db.Column(db.String(180), nullable=False)
rating = db.Column(db.String(80), nullable=False)
ranking = db.Column(db.String(80), nullable=False)
review = db.Column(db.String(256), nullable=False)
img_url = db.Column(db.String(1000), nullable=False)
def __repr__(self):
return f"id: {self.id} title: {self.title} year: {self.year} description:
{self.description} rating: {self.rating} " \
f"ranking {self.ranking} review: {self.review} img_url: {self.img_url}"
@app.route('/edit', methods=['GET','POST'])
def edit_movie():
movie_id = request.args.get('id')
form = Edit_Form()
print(movie_id)
if request.method == 'POST':
movie_update = Movie.query.filter_by(id=movie_id).first()
movie_update.rating = form.rating.data
movie_update.review = form.review.data
db.session.commit()
return redirect(url_for('home'))
return render_template('edit.html', form=form)
那是我的 html 代碼
<form action="{{ url_for('edit_movie') }}" method="POST">
{{ form.csrf_token }}
<p>please put in your new rating</p>
{{ form.rating }}
<p>please write your review </p>
{{ form.review }}
{{ form.submit }}
</form>
好像不對sql資料做任何改動
AttributeError: 'NoneType' 物件沒有屬性 'rating'
uj5u.com熱心網友回復:
movie_update = Movie.query.filter_by(id=movie_id).first()
沒有找到電影,并且回傳 None。
uj5u.com熱心網友回復:
您認為正在創建的“movie.update”物件尚未創建,因此不僅評級作為一種方法會失敗,而且我也很高興。所以,當失敗時,什么都不會提交
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/361296.html
標籤:Python 烧瓶 烧瓶-sqlalchemy 烧瓶wtforms
上一篇:燒瓶中損壞的模態
