【问题标题】:web2py multiple records in 1 form or in wizardweb2py 以 1 种形式或在向导中的多条记录
【发布时间】:2014-02-09 00:00:33
【问题描述】:

在web2py中,制作订票表格

简化的数据库视图:

db.define_table('shows', Field('ShowName', 'string'))
db.define_table('reservations', 
                 Field('PersonName','string'),
                 Field('NbrOfTickets','integer'),
                 Field('show_id',db.shows))
db.reservations.show_id.requires = IS_IN_DB(db, db.shows.id, '%(ShowName)s')

预订时: 人们需要先填写自己的姓名,然后从下拉菜单中选择节目和门票数量。

这一切都很好,但是: 我希望人们能够预订超过 1 场演出! 但是人们不喜欢多次填写自己的名字......

所以问题是:我怎样才能制作一个表格(或向导),让人们只填写一次他们的名字,然后有可能在他们选择的地方填写几个(预先金额未知)表格1 场演出 + 门票数量。

如果这一切都可以在没有向导的情况下完成,对我来说也很好。

感谢您的帮助!

【问题讨论】:

    标签: forms web2py wizard


    【解决方案1】:

    以下作品:(感谢 Massimo Di Pierro 的建议)

    解决方案是预先填写表格,这样如果同一用户填写了两次表格,他就不必重新输入他的姓名:

    def reserve():
        form  = SQLFORM(db.reservations)
        form.vars.PersonName = session.PersonName
        if form.process().accepted:
            session.PersonName = form.vars.PersonName
        return dict(form=form)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-23
      • 2010-09-25
      • 2011-09-07
      • 1970-01-01
      相关资源
      最近更新 更多