引用在 web2py 中第一个 table 定义之后定义的 table

referencing a table which is defined after the definition of the first table in web2py

    db.define_table("devices",
            Field('user_id','reference users'),#   THIS PRODUCES AN ERROR 
            Field('energyConsumed','integer'),
            Field('device_password','password'),
            Field('date_of_measure','date')
            );
db.define_table("users",
            Field('device_id','reference devices')
);

我无法在第一个 table 中使用 'reference users',因为它在 table 的定义之前尚未定义。我如何引用 table 稍后才定义的 .

您不能引用未定义的 table。所以你必须使用替代语法。

为此使用 IS_IN_DB 验证器。

IS_IN_DB(db, 'users.id')

这里已经回答了:

https://groups.google.com/forum/#!msg/web2py/yNca8bq0HmM/DmVjCPrODQAJ