解决方法 format参数用于确定将如何显示引用“person”表的其他表中的字段.例如,如果您定义:db.define_table(‘person’,FIEld(‘name’),format=’%(name)s’)
这种格式在这里做什么?
db.define_table('dog',FIEld('name'),FIEld('owner',db.person)
“所有者”字段是引用“人物”表的参考字段(即,它存储来自“人”表的记录的记录ID).在大多数情况下,当您从’dog’表中显示数据时,您不希望显示存储在’owner’字段中的原始db.person记录ID,因为它没有任何意义 – 相反,显示此人的“姓名”更有意义.在web2py中,表的format属性在表单和表中启用此自动替换.
当您基于’dog’表创建sqlFORM时,它将自动为’owner’字段生成一个下拉列表,并且因为’person’表定义的format =’%(name)s’参数,下拉列表将显示db.person名称而不是记录ID(即使在表单提交时,“owner”字段将存储关联的记录ID而不是名称).
此外,如果您在sqltable或sqlFORM.grID中显示’dog’表中的记录,“owner”字段将显示所有者的名称而不是所有者的记录ID.
见http://web2py.com/books/default/chapter/29/6#Record-representation.
总结以上是内存溢出为你收集整理的web2py数据库中的表示格式全部内容,希望文章能够帮你解决web2py数据库中的表示格式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)