У меня есть две таблицы: пользователи и ники.
В таблице users у меня есть поле имя пользователя, а в таблице nicks у меня есть поле nick_name< /p>
Есть Связь hasMany между пользователями и никами
Код: Выделить всё
public $hasMany = array(
'Nick' => array(
'className' => 'Nick',
'foreignKey' => 'user_id',
'dependent' => true
)
);
Код: Выделить всё
'username must be unique' => array(
'rule' => 'isUnique',
'message' => 'username is already taken'
)
Код: Выделить всё
'somebody use that name as a nickname' => array(
'rule' => 'checkNickName',
'message' => 'That name is already in use'
)
Код: Выделить всё
public function checkNickName(){
$nick2 = $this->find('all');
$nickNames = array();
foreach($nick2 as $name2){
foreach($name2['Nick'] as $name1){
array_push($nickNames,strtolower($name1['nick_name']));
}
}
$username = strtolower($this->data['User']['username']);
return in_array($username,$nickNames);
}
Подробнее здесь: https://stackoverflow.com/questions/266 ... ssociation