1
我正在用燒瓶構建一個簡單的Q & A(面試和回答)。 相關的代碼如下:flask-sqlalchemy將意外變量存儲到數據庫中
@blueprint.route("/interview/", methods=['GET', 'POST'])
def interview():
rows = Question.query.count() #counts number of rows
r = random.randint(1,rows) #picks a number from 1 to 'rows'
question=Question.query.get(r) #queries the index generated by randint
user=User.query.get(session['user_id']) #gets session data
created_at=''
form = InterviewForm()
if form.validate_on_submit():
new_answer = Answer.create(text=form.answer.data, user=user, question=question, created_at=created_at) #basically a method that combines db.session.add and db.session.commit
flash("Your answer has been submitted")
return redirect(url_for('interview.list', question=question.id))
return render_template("interview/interview.html", form=form, question=question)
預期的結果是:
- 用戶將看到一個生成的隨機問題
- 問題的答案併發布到服務器
- 插入答案數據庫與 對應的問題ID(一對多關係)
但是,我得到的是:
- 當用戶提交了答案,答案被插入到數據庫 不同的問題ID
我覺得有什麼不妥產生的隨機數,即它會爲查看和插入生成不同的隨機整數。
的感謝!多數民衆贊成我也懷疑。 –