Некоторые вопросы относительно объявления моделей в Kohana ORM - PullRequest
0 голосов
/ 24 июня 2011

Итак, я только начал учиться использовать ORM, пошел с Jelly, когда впервые начал изучать Ko3, и столкнулся с несколькими вопросами ... они могут показаться глупыми, поэтому, пожалуйста, потерпите меня.

Сначала язаметил, что объявления модели достаточно, чтобы начать использовать ее, не разбивая поля.Это какой-то автоматик, о котором я не знаю?Если так ... это вызывает проблемы с производительностью и следует ли этого избегать?

Я также заметил два разных способа объявления правил ... в чем разница между этими двумя методами?

public function rules() {
    return array(
        'categoryname' => array(
            array('not_empty'),
        ),
    );
}

protected $_rules = array(
    'categoryname' => array(
        'not_empty' => true,
    ),
);

1 Ответ

2 голосов
/ 25 июня 2011
  1. Да, ORM автоматически вызовет SHOW COLUMNS на пустой модели.Но вы можете просто кэшировать его .
  2. rules() было добавлено в Kohana 3.1 (3.0 использует свойство $_rules).Теперь вы можете применить некоторую логику перед возвращением списка правил.И это лучше для расширения модели, например:
public function rules()
{
    return parent::rules() + array('foo' => 'bar');
}
...