首页 > 解决方案 > Web2py 中的可编辑下拉列表

问题描述

我需要创建一个下拉列表,用户可以在其中从
下拉列表中选择一个值或键入该值。下拉列表值存储
在数据库表中。

例如:表单看起来像这样:
“你来自哪里?”:如果在你的
城市中找不到你的城市,下拉列表列出了可用的城市。

我试过这个代码:
Field('City', requires = IS_IN_DB(db,db.city.id,'%(city)s')
如果
数据库中缺少这个代码,我就无法输入一个新城市。

我只能选择数据库中的可用城市。

模型:

 db.define_table('city',Field('name',type='string',length=100,required=True
,notnull=True, ondelete='SET NULL',unique=True),format='%(name)s')
db.define_table('person',Field('name',type='string',length=100,required=Tr
ue,notnull=True, ondelete='SET NULL',unique=True),
Field('city_id','reference city',required=True,notnull=True,label='City'),
format='%(name)s')
db.person.city_id.requires=IS_IN_DB(db,'city.id' ,'%(city)s')

控制器:

def person():

     return 

dict(grid=sqlform.grid(db.person,create=True,editable=True,deletable=True)

)

View:

{{extend 'layout.html'}}
<div class="row">

  <div class="col-md-12">

     {{pass}}

    {{=grid}}

  </div>

</div>

标签: web2py

解决方案


推荐阅读