web2py中的外键

时间:2012-11-30 08:43:13

标签: python mysql data-access-layer web2py

我一直收到这个错误: 'DAL'对象没有属性'event_instance'

它指向我的db_agents文件作为此行的罪魁祸首:

('event_instance_id', db.event_instance)

但是,如果我将event_instance表的定义移动到该db_agents模型文件,则错误消失,但是我在event_instance tbl中获得了一个新的参与另一个FKey的错误。有没有办法避免将所有db.define_tables放在同一个文件中,我想将它们分开。

1 个答案:

答案 0 :(得分:1)

你可以这样做:

Field('event_instance_id', 'reference event_instance')

使用该替代语法,不必定义“event_instance”表。

另外,请注意模型文件按字母顺序执行,因此只要在早先按字母顺序排列的模型文件中定义“event_instance”表,原始代码就会起作用。