我使用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