В таблице регионов у меня есть список названий всех стран. и в таблице профилей у меня есть профиль для моих пользователей и одно из полей в этой таблице в «стране».
Ранее я предоставлял пользователям поле ввода для ввода названия страны, но недавно я заметил, что мало кто туда вводит неверную информацию. Один парень ввел «Юпитер» в качестве названия своей страны.
теперь я хочу сделать в своей модели профиля что-то вроде этого:
Код: Выделить всё
'country must exist' => array(
'rule' => 'countryValidation',
'message' => 'There is no such country'
)
public function countryValidation($check) {
$country = strtolower($this->data['Profile']['country']);
$countries = array();
$regions = $this-Region->find('all');
foreach($regions as $region){
array_push($countries, strtolower($region['Region']['country']));
}
return in_array($country,$countries);
}
Код: Выделить всё
$regions = $this-Region->find('all');
Кстати, я не могу предоставить раскрывающийся список стране, потому что это портит мой макет/дизайн веб-сайта.
Подробнее здесь: https://stackoverflow.com/questions/265 ... in-cakephp
Мобильная версия