- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我无法使用 Flask-SQLAlchemy 将表单存储在 sqlite3 数据库中。当我尝试存储表单时,我的 views.py
抛出以下错误。
UnmappedInstanceError: Class 'app.forms.Survey1' is not mapped
@app.route('/survey_1/', methods=['GET','POST'])
@login_required
def survey_1():
form = Survey1(request.form)
if form.validate_on_submit():
print form
db.session.add(form)
db.session.commit()
return redirect(url_for('index'))
return render_template('Survey1.html', title='Survey', form=form)
class Survey1(db.Model):
id = db.Column(db.Integer, primary_key = True)
gender = db.Column(db.Integer)
age = db.Column(db.Integer)
education = db.Column(db.Integer)
language = db.Column(db.String(20))
db = db.relationship('Database', backref='survey1', lazy='dynamic')
def __init__(self, gender=None, age=None, education=None, language=None):
self.gender=gender
self.age=age
self.education=education
self.language=language
def get_id(self):
return unicode(self.id)
class Survey1(Form):
gender=fields.RadioField('X', choices=[('Y','Y'),('Z','Z')],validators = [Required()])
age=fields.RadioField('X', choices=[('Y','Y'),('Z','Z')], validators=[Required()])
education = fields.RadioField('X',choices=[('Y','Y'),('Z','Z')],validators=[Required()])
language = fields.TextField('Native Language', validators=[Required()])
如何存储此表单?
最佳答案
SQLAlchemy 的方法仅适用于 SQLAlchemy 对象 - 您的问题是您正在传递 WTForms Form
类的实例(SQLAlchemy 不知道如何持久保存到您的数据库)。您可以使用 Form.populate_obj
从 WTForms 类映射到您的 SQLAlchemy 对象一旦您更改了 Form
声明以匹配您的 Model
类中的类型(gender
、age
和 education
在您的 Model
类中都标记为 Integer
,但在您的 Form
中是 String
字段> 类)。
if form.validate_on_submit():
model = models.Survey1()
form.populate_obj(model)
db.session.add(model)
db.session.commit()
return redirect(url_for('index'))
关于带 SQLAlchemy 的 Flask WTForms : UnmappedInstanceError when storing a form in a database,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23507987/
我是 SQLAlchemy 的新手,正在为我当前的项目使用 Flask-SQLAlchemy。我遇到了一个让我难过的错误: sqlalchemy.orm.exc.UnmappedInstanceErr
我正在为 MYSQL 数据库使用 Python Sqlalchemy。我编写了以下脚本来创建类对象,然后在表中添加一行。 from sqlalchemy import create_engine, M
我一直在阅读 SQLAlchemy 文档,但我不理解它们。错误 (UnmappedInstanceError) 表示某些内容未映射。什么没有映射?我真的不懂 sqlalchemy,我想回去使用 nak
我在显示相关输入表单时遇到以下错误。 sqlalchemy.orm.exc.UnmappedInstanceError UnmappedInstanceError: Class 'sqlalchemy
我正在尝试使用 SQLAlchemy 和 Marshmallow 将新用户插入到数据库中。 user 参数是从 API 端点接收的。一切正常,直到我到达 create 函数中的这一行: db.sess
我有 3 个 sqlalchemy 模型设置,它们都是一对多的关系。用户模型包含许多任务模型,任务模型包含许多子任务模型。当我执行 test_script.py 我得到错误 sqlalchemy.or
我无法使用 Flask-SQLAlchemy 将表单存储在 sqlite3 数据库中。当我尝试存储表单时,我的 views.py 抛出以下错误。 UnmappedInstanceError: Clas
我是一名优秀的程序员,十分优秀!