Yii2:如何通过GridView中的其他字段而不是id字段查找?

时间:2017-11-02 18:18:58

标签: php gridview text yii2 primary-key

我使用GridView显示一个名为亲属(一个人的家庭成员)的模型,它有两个字段:(属性id_person)和相对(属性name_relative)。

我的数据库中的表是人员和亲戚。

我的Person字段有问题。我没有显示人员的ID,而是显示人员姓名,因为id是自动生成的主键。

当我想要搜索时,它由id_person搜索。 我需要搜索输入某个人的姓名,没有人会写一个ID。

以下是RelativesController文件的代码:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        [
            'attribute' => 'id_person',
            'label' => 'Person',
            'value' => function($model) {
                $person = \app\models\Persons::findOne(['id_person' => $model->id_person]);
                return $person->name_person;
            }
        ],
        'name_relative',
    ],
]); ?>

这就是我所拥有的(按 id 搜索): Seaching by id

这就是我所需要的(通过名称搜索): Searching by name

0 个答案:

没有答案