gpt4 book ai didi

python - web2py 插入变量表和字段名称,例如与字典

转载 作者:太空宇宙 更新时间:2023-11-03 21:47:17 26 4
gpt4 key购买 nike

有没有办法在运行时处理表名和字段名?

我找到了对以字典作为参数的插入方法的引用但假设rd是一个有10个条目的字典,key=字段名称,value=要插入的值,下面的代码将失败

    db.OrdersFull.insert(rd)

出现错误:TypeError:insert() 只需要 1 个参数(给定 2 个参数)
1)有任何线索吗?
2)使用此解决方案,表名称(OrdersFull)在开发时仍然必须已知,有什么方法可以插入到仅在运行时名称已知的表中?
3)是否有地方可以找到可用的 web2py API 调用的引用信息?

最佳答案

要基于生成其名称的 Python 表达式访问表,您可以执行以下操作:

tablename = 'mytable'
db[tablename]

这已记录在案here .

要将字典与 .insert() 方法一起使用,您可以使用标准 Python 关键字参数解包:

db[tablename].insert(**mydict)

这并非特定于 web2py 或 DAL,而是标准 Python 语法。

还有一种特殊方法可以用来过滤掉字典中不属于表中字段的任何项目:

db.mytable.insert(**db.mytable._filter_fields(mydict))

如果您传入之前从表中选择的记录,上面的内容很有用,因为它会自动从记录中过滤掉 id 字段(您不想指定 id 插入时,数据库将自动创建)。

关于API引用,除了book ,还有this API documentation .

关于python - web2py 插入变量表和字段名称,例如与字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52401450/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com