我正在尝试从产品名称的 web2py 数据库中填充下拉导航栏。该表在 db.py 中定义如下:
db.define_table('product',
Field('prodid', unique=True),
Field('name'),
Field('stock', 'integer'))
我做了一些研究,发现有很多方法可以从 SQL 数据库中使用 PHP,但是我无法找到任何关于从 web2py 中的本地数据库中检索的信息。
任何帮助,将不胜感激。
这是向导提供的代码(在“格式”中进行了调整):
########################################
db.define_table('t_products',
Field('f_prodid', type='string',
label=T('Prodid')),
Field('f_name', type='string',
label=T('Name')),
Field('f_stock', type='string',
label=T('Stock')),
format='%(f_name)s',
migrate=settings.migrate)
########################################
db.define_table('t_orders',
Field('f_orderid', type='string',
label=T('Orderid')),
Field('f_product_name', type='reference t_products',
label=T('Product Name')),
format='%(f_orderid)s',
migrate=settings.migrate)
关键词是第二个表中的“参考”和第一个表中的“格式”。
试试这个:
{{ rows = db().select(db.product.ALL) }}
{{if len(rows):}}
<ul>
{{ for r in rows: }}
<li>
<a href="yourlink/{{=r.id}}">
{{=r.name}}
</a>
</li>
{{pass}}
</ul>
{{pass}}