Хорошо, у меня есть две таблицы: пользователи и устройства.'Unit' принадлежит 'User', а 'User' имеетMany 'Unit'.Я хотел бы получить доступ ко всем данным из моей таблицы единиц измерения и добавить некоторые данные из моей таблицы пользователей для просмотра.Вот мой код контроллера:
public function condos() {
$u=$this->User->Unit->find('all', array('conditions'=>array('type'=>'condo', 'active'=>1)));
$this->set('allcondos', $u);
}
У меня есть две модели, User и Unit, вот код для них: из unit.php:
class Unit extends AppModel {
var $name='Unit';
var $belongsTo=array(
'User'=>array(
'className'=>'User',
'foreignKey'=>'user_id'
) );
}
и из user.php:
class User extends AppModel {
var $name='User';
var $hasMany=array(
'Unit'=>array(
'className'=>'Unit',
'foreignKey'=>'user_id'
) );
}
Вот мой код просмотра:
<?php foreach ($allcondos as $condo) { ?>
<section class="listings">
<figure>
<img src="<?php echo $condo['Unit']['photo1']; ?>" />
</figure>
<h1><?php echo $condo['Unit']['complex'], ' ', $condo['Unit']['unitnum']; ?></h1>
<h2><?php echo $condo['Unit']['city']; ?>, <?php echo $condo['Unit']['state']; ?> | (<?php echo $condo['User']['area_code']; ?>)<?php echo $condo['User']['exchange'];?>-<?php echo $condo['User']['sln'];?></h2>
<p><?php echo $condo['Unit']['unit_desc']; ?></p>
</section>
<?php } ?>
У меня проблема с вызовом $ condo ['User'] ['any_field'], так как он возвращает ноль 'Данные пользователя.(Он возвращает данные «Юнит» просто отлично).Я не знаю, как получить доступ к обеим таблицам, очевидно.
Если я отлаживаю $ allcondos в представлении, это выглядит так:
Array
(
[0] => Array
(
[Unit] => Array
(
[id] => 1
[user_id] => caribeincrentals
[additional fields] ...
)
[User] => Array
(
[id] =>
[user_id] =>
[additional fields] ...
)
)
[1] => Array ...
)