【发布时间】:2019-12-14 13:10:20
【问题描述】:
我正在使用烧瓶和 SQLalchemy 设置一个简单的数据库,但是我为我的类设置的属性无法识别“默认”名称。
我正在使用 Python 3.7.4、Flask 1.1.1 和 Flask-SQLALchemy 2.4。我试过重新安装 SQLAlchemy,并仔细检查我的语法。
这是我正在使用的模块:
from flask import Flask, render_template, url_for, flash, redirect
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
from forms import Registrationform, Loginform, BudgetEntry
这是我的一门课
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(20), nullable=False, unique=True)
email = db.Column(db.String(120), nullable=False, unique=True)
image_file = db.Column(db.String(20), nullable=False, default=default.jpg)
password = db.Column(db.String(20), nullable=False)
budgets = db.relationship("Budget", backref="author", lazy=True)
现在当我进入命令行并尝试导入 db 时,它给了我一个错误:
NameError: name 'default' is not defined
【问题讨论】:
-
您的标题(“默认”未定义)与声称的错误不一致(“db”未定义)
-
请提供minimal reproducible example,如果遇到错误,请提供完整的错误堆栈。
-
似乎
db确实没有定义。所以,你应该定义它。 -
看起来Flask-SQLAlchemy quickstart guide 显示了您应该如何定义
db。
标签: python flask sqlalchemy