【问题标题】:when I try to run my flask/python application it gives me the error: A secret key is required to use CSRF当我尝试运行我的烧瓶/python 应用程序时,它给了我错误:A secret key is required to use CSRF
【发布时间】:2020-04-03 15:00:41
【问题描述】:

当我尝试运行我的烧瓶/python 应用程序时,它给了我错误:使用 CSRF 需要密钥。

我刚刚开始使用 python 和烧瓶,我的印象是错误与 wtforms 有关。

from flask import Flask, render_template, url_for
from forms import RegistrationForm, LoginForm

app = Flask(__name__)

app.config['SECRET_KEY'] = 'secretkey'




posts = [
    {
        'author': 'John Doe',
        'title': 'post 1',
        'content': 'first post content',
        'date': 'March 26, 2020'
    },
    {
        'author': 'Other Person',
        'title': 'post 2',
        'content': 'second post content' ,
        'date': 'March 26, 2020'         
    }
]


app = Flask(__name__)


@app.route('/')
@app.route('/home')
def home():
    return render_template('home.html', posts=posts)

@app.route('/about')
def about():
    return render_template('about.html')

@app.route('/register')
def register():
    form = RegistrationForm()
    return render_template('register.html', title = 'Register', form=form)

@app.route('/login')
def login():
    form = LoginForm()
    return render_template('login.html', title = 'Login', form=form)

if __name__ == '__main__':
    app.run(debug=True)

【问题讨论】:

    标签: python flask flask-wtforms wtforms flask-login


    【解决方案1】:

    您已经在此处重新创建了应用实例

    app = Flask(__name__)
    

    删除该行的第二个实例,它应该可以工作。

    【讨论】:

    • 当我这样做时,它给了我错误:未定义名称'app'
    • 删除该行的第二个实例
    猜你喜欢
    • 2018-05-21
    • 1970-01-01
    • 2020-10-15
    • 2022-12-21
    • 1970-01-01
    • 2022-07-01
    • 2022-10-04
    • 2017-05-02
    • 1970-01-01
    相关资源
    最近更新 更多