1. 程式人生 > >關於Flask mega-tutorial遇到的一些問題-二(Form更名,sqlalchemy預設值)

關於Flask mega-tutorial遇到的一些問題-二(Form更名,sqlalchemy預設值)

一、Form 更名為 FlaskForm(rename)

當執行run.py載入login介面時,會出現這樣的錯誤:

192.168.1.3 - - [16/Apr/2017 18:38:49] "GET /index HTTP/1.1" 302 -
/home/air/Desktop/microblog/app/views.py:61: FlaskWTFDeprecationWarning: "flask_wtf.Form" has been renamed to "FlaskForm" and will be removed in 1.0.
  form = LoginForm()

字面意思,這個flask_wtf.Form

更名為FlaskForm了,那,就把Form改成FlaskForm好了,
可是 app/views裡面並沒有Form,所以…
app/models
改成這個樣子:

 from flask_wtf import FlaskForm as Form

解決~

二、設定SQLALCHEMY_TRACK_MODIFICATIONS 為True或False

/home/air/Desktop/microblog/flask/local/lib/python2.7/site-packages/flask_sqlalchemy/__init__.py:839: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and
will be disabled by default in the future. Set it to True or False to suppress this warning. 'SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and ' * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

是說SQLALCHEMY_TRACK_MODIFICATIONS不能預設什麼都沒有,
得設定其為 True 或者 False
所以就去/flask/local/lib/python2.7/site-packages/flask_sqlalchemy/__init__.py

這個檔案中進行更改,
提示給的839行,在前面幾行的位置有這樣的setdefault
把None改為True;:

...
 833            track_modifications = app.config.setdefault(
 834             'SQLALCHEMY_TRACK_MODIFICATIONS', True
 835         )
...