Как проверить связанные модели

В моем приложении есть модели Product и Category. Товар может принадлежать только к одной категории. Они отображаются в раскрывающемся списке в форме «Новый продукт».

Что я хотел бы сделать, так это то, что когда я создаю новый продукт, приложение также проверяет категорию. Как я могу сделать это, используя связанные проверки модели?

Заранее спасибо.

Лео


person Leonel    schedule 18.01.2012    source источник
comment
Что бы вы подтвердили? Когда вы сохраняете новый продукт, я полагаю, вы не сохраняете ни одну категорию? Итак, о чем будет валидация категории?   -  person nIcO    schedule 19.01.2012
comment
Я хочу проверить поле category_id модели Product в представлении Products/add.ctp. когда в таблице категорий нет категорий, раскрывающийся список пуст, и это вызывает ошибку sql. заранее спасибо.   -  person Leonel    schedule 19.01.2012


Ответы (2)


Вы должны определить правила проверки в каждой модели (продукт и категория), которые применяются к этой модели.

person Jeff    schedule 18.01.2012

Вы должны поместить переменную проверки в свой продукт следующим образом:

  // declares a package for a class
    App::uses('AppModel', 'Model');

class Product extends AppModel {

    // validate
    $validate = array(
        'category_id' => array(
            'rule' => array('numeric'),
            'allowEmpty' => false,
            'message' => __('You should select a category'),
        ),

    );
}
person Arash Mousavi    schedule 05.07.2013