html获取数据库数据类型,以html格式获取列表并将其存储在SQLalchemy flaskpython数据库中...

我尝试从带有Flask的HTML表单中获取值列表,并将其存储在数据库的列中。我试图使用getlist(),但我不知道应该如何正确地使用它。在

数据库:association_table = Table('association', Base.metadata,

Column('book_id', Integer, ForeignKey('Book.id')),

Column('form_id', Integer, ForeignKey('Form.id'))

)

class Book(Base):

__tablename__ = 'Book'

name = Column(String(80), nullable = False, unique=True)

id = Column(Integer, primary_key = True)

author = Column(String(30))

language = Column(String(30))

category_id = Column(Integer, ForeignKey('Category.id'), nullable = False)

category = relationship(Category)

forms = relationship("Form", secondary=association_table, back_populates="books")

def __repr__(self):

return '' % self.name

class Form(Base):

__tablename__ = 'Form'

name = Column(String, nullable = False)

id = Column(Integer, primary_key=True)

books = relationship("Book", secondary=association_table, back_populates="forms")

def __repr__(self):

return self.name

新书模板:

^{pr2}$

路线:@app.route('/books/new/', methods=['GET', 'POST'])

def newBook():

categories = session.query(Category).all()

forms = session.query(Form).all()

#languages = session.query(Languages).all()

if request.method == 'POST':

newBook = Book(name = request.form['name'],

author = request.form['author'],

category = Category(name=request.form.get('category')),

forms = Form(name=request.form.getlist('form')),

language = request.form['language'])

session.add(newBook)

session.commit()

flash("New Book Added!")

return redirect(url_for('showBooks'))

else:

return render_template('newBook.html', languages=languages, categories=categories, forms=forms)

当我试图添加新书时,我得到的是打字错误:

不兼容的集合类型:窗体不是列表形式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值