Flaskを使って簡単なWebアプリを作成しております。
機能の一つに息抜きとして社内の人が毎日送ってくれる偉人たちの名言を記録したテキストファイルをランダムで表示するページを作成しております。
Flaskの本体とは別にその名言をランダムでピックアップするファイルを作り、importさせています。
/// ファイル構成 ///
TEST
├── app.py (本体ファイル)
├── words_select.py (名言抽出ファイル。app.pyにimportされる)
├── static
│ ├── words.txt (名言が書かれたファイル)
└── templates
├── index.html
└── words.html (名言を表示するページ)
app.py ~中略~ @app.route('/words') def words(): return render_template('words.html', title='Good Words', message='') @app.route('/good_words') def good_words(): sys.setrecursionlimit(2000) response = words() return render_template('words.html', title='Good Words', message=response)
words_select.py import random def words(): words = [] with open('FlaskBlog/static/words.txt', encoding='utf-8') as f: for i in f: text = i.rstrip() words.append(text) response = random.choice(words) return response
words.html {% extends "layout.html" %} {% block title %} {{title}} {% endblock %} {% block content %} <h3>前向きになる言葉が出てくるよ</h3> <button onclick="location.href='/good_words'">ここをクリックしてね</button> <br> <p>あなたへのメッセージ:{{message}}</p> <br><br> {% endblock %}
RecursionErrorが送出されるので、検索した結果を参考に import sys と sys.setrecursionlimit(2000) を
記述しているのですがうまくいきません。
setrecursionlimit(2000)を(3000)にすると「このサイトにアクセスできません」となります。
にっちもさっちもいかなくなってしまったのでご教示いただけますと幸甚です。
回答1件
あなたの回答
tips
プレビュー