Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php yii2 gii积垢数据库关系(一对多)_Php_Yii2 - Fatal编程技术网

Php yii2 gii积垢数据库关系(一对多)

Php yii2 gii积垢数据库关系(一对多),php,yii2,Php,Yii2,gii成功生成模型(具有关系): 但当我生成crud时,在客户机字段中只输入文本字段。 请帮帮我,问题在哪里 没错。在_form.php文件中,如果用户应选择客户端,则必须定义一个下拉框: 在控制器操作创建/更新中,您必须提供$clients: 返回$this->render('create',[//或:返回$this->render('update')[ 'model'=>$model, 'clients'=>ArrayHelper::map(Client::find()->all(),'

gii成功生成模型(具有关系):

但当我生成crud时,在客户机字段中只输入文本字段。
请帮帮我,问题在哪里

没错。在_form.php文件中,如果用户应选择客户端,则必须定义一个下拉框:


在控制器操作创建/更新中,您必须提供$clients:

返回$this->render('create',[//或:返回$this->render('update')[
'model'=>$model,
'clients'=>ArrayHelper::map(Client::find()->all(),'id','name'),
]);
不要忘记在create.php和update.php的视图文件中将它们传递到_form.php文件:


在其他视图中,如果您只想向客户端显示,则可以使用以下选项:

echo$model->client->name;//或其他内容

正如robsch所说,这是默认行为,您可以看看我的gii生成器扩展,它也呈现了关系:@schmunk确实是一个有趣的扩展!但我认为初学者不知道它是关于什么的。
/**
 * @return \yii\db\ActiveQuery
 */
public function getClient()
{
    return $this->hasOne(Client::className(), ['id' => 'client_id']);
}