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

1

Как показать имя родителя на Yii2.

Это мой work-

Я хочу показать имя состояния, в котором находится идентификатор состояния, например, 1, District - имя дочерней таблицы, где находится внешний ключ state_id, я хочу заменить state_name, где находится state_id.

Это мой sql-

CREATE TABLE district (
district _id int(11) NOT NULL AUTO_INCREMENT,
state_id int(11) NOT NULL COMMENT 'FK',
district_name varchar(30) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (district _id),
FOREIGN KEY (state_id) REFERENCES state (state_id)
);

Изображение 174551

Мой controller-

$district= District::find()->all();

View-

<?php
foreach($district as $districtt)
{
?>
<tr>
<td><?= $districtt->state_id ?></td>
<td><?= $districtt->districtt_name ?></td>
</tr>
<?php
}
?>
  • 1
    добавьте код своего пробного периода.
  • 0
    вместо штата вы пошли показывать название штата? Я прав?
Показать ещё 2 комментария
Теги:
yii2

1 ответ

1
Лучший ответ
class District extends ActiveRecord
// ...
public function getState()
{
    return $this->hasOne(State::className(), ['id' => 'state_id']);
}

index.php

<?php foreach(District::find()->all() as $district) { ?>
    <tr>
      <td><?= $district->state ? $district->state->state_name : $district->state_id ?></td>
      <td><?= $district->district_name ?></td>
    </tr>
  • 0
    Спасибо Сергей :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню