如何设置fuelphpORM关系的动态条件


How to set dynamic condition for fuelphp ORM relation

我使用fuelphp的ORM创建了一个多对多关系。

关系的伪代码看起来像这个

class MyModel extends Model
{
protected static $_many_many = [
    'relatedmodel' => [
        'conditions' => [
            'where' => [
                    ['ctime', '>', DB::expr(('now() - interval 1 week'))],
                ],
            ],
        ]
    ];
}

这里的想法是,我只想让这段关系看看上周创建的较新的相关模型。

然而,由于php语言的限制,这显然不起作用——不允许将表达式作为字段默认值。

如何在FuelPHP中获得所需的行为?

此处语言约束的解决方法是使用Fuel自动加载器的public static _init()函数来设置值。当类由自动加载器加载时,它会自动调用。

http://fuelphp.com/docs/general/classes.html#/init_method