Как установить динамическое условие для отношения ORM FuelHP

У меня есть отношения многие ко многим, созданные с использованием ORM Fuelphp.

Псевдокод для отношения выглядит так

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

Идея в том, что я хочу, чтобы отношения только смотрели на новые связанные модели, созданные на прошлой неделе.

Однако это, очевидно, не сработает из-за ограничений языка php - выражение не допускается в качестве значения по умолчанию для поля.

Как я могу получить желаемое поведение в FuelPHP, несмотря на это ограничение?

1 ответ

Решение

Обходной путь для языкового ограничения здесь - использовать автозагрузчик Fuel. public static _init() функция для установки значения. Это вызывается автоматически, когда класс загружается автозагрузчиком.

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

Другие вопросы по тегам