データベースに保存してからアプリに表示するには、ユーザー入力が必要です。 ユーザーの入力を空白のままにした場合、エラーメッセージを表示する必要があります。if文が機能しないのはなぜですか?
エラーメッセージが表示されている状態で、問題が発生しています。 ユーザーの入力が空白の場合、空白の投稿はdbに保存され、エラーメッセージを表示するのではなく内容が表示されます。
私は、Python、Jinja2の、フラスコ、HTML
感謝を使用しています!
if request.method == 'POST':
blog_title = str(request.form['title'])
blog_body = str(request.form['body'])
title_error = ''
body_error = ''
if len(blog_title) == 0:
title_error = 'Please give your blog a title'
return title_error
if len(blog_body) == 0:
body_error = "Please give your blog some content"
return body_error
else:
new_blog = Blog(blog_title, blog_body)
db.session.add(new_blog)
db.session.commit()
blog_id = new_blog.id
return redirect(url_for('blogs', id=blog_id))
else:
return render_template('/newpost_form.html')
よく空の文字列( 'title_error')を返していますか? – patrick
@patrick彼は 'return'の直前で文字列を再定義します。しかし、彼は本当にそれをまったく正直に「 '」と定義する必要はありません。 – pstatix
@pstatix私はあなたが正しいと思う、最初の場合は "elif"のために続かなければならない? –