CakePHP: Показать user_name в BelongsTo, где хранится только user_id - PullRequest
0 голосов
/ 18 июля 2011

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

У меня есть несколько настроек взаимоотношений с таблицей, и я хотел бы показать имя пользователя, а не идентификатор пользователя при извлечении связанной таблицы, содержащей записи BelongsTo.

Есть ли простой способ сделать запрос для этих имен в их собственных таблицах для этого набора отношений?

В частности, при отображении списка ПРОЕКТОВ я также отображаю список связанных СТАТУСОВ. СТАТУСЫ имеют отношения BelongsTo с ПОЛЬЗОВАТЕЛЯМИ и ПРОЕКТАМИ, и я хотел бы отображать имя пользователя и имя проекта, а не _id.

В настоящее время я настраиваю контроллер PROJECT на рекурсивный:

$this->Project->recursive = 2;

Так что это позволяет мне звонить в СТАТУСЫ, связанные с ПРОЕКТАМИ:

<?php echo $status['user_id'];?>

Однако именно здесь я бы предпочел отобразить имя_пользователя.

Есть мысли?

1 Ответ

1 голос
/ 18 июля 2011

В модели пользователя:

var $ displayField = 'user_name';

Это повлияет на поиск ('список') и строительные леса.

Чтобы отобразить имя пользователя во втором примере, просто измените его на:

<?php echo $status['user_name'];?>
...