.select2-container{width:100%!important;显示:块;}在上一节中,我们使用转发器字段来存储演员信息。当然,这不是最好的方法。我们希望可以将演员信息存储在一个单独的表中,演员信息可能需要更多的字段进行存储。然后把actor表和其他表关联起来,就像video表和style表的关联一样。只不过我们要用和上面类似的方法,用复选框的形式来进行样式选择。这绝对不是您最满意的方式。在本节和下一节中,我们将讨论如何自定义表单控件,将小部件连接到视频表单,以及将视频与表单对应的数据相关联。创建以下文件结构'Actorbox','description'=>'添加演员的字段',];}publicfunctionrender(){return$this->makePartial('widget');}publicfunctionloadAssets(){$this->addCss('css/select2.css');$this->addJs('js/select2.js');}}编辑文件:pluginsraiseinfomoviesPlugin.phppublicfunctionregisterFormWidgets(){return['Raiseinfo\Movies\FormWidgets\Actorbox'=>['label'=>'ActorboxField','code'=>'actorbox']];}Edit文件:pluginsraiseinfomoviesmodelsmoviefields.yaml请删除以下代码(从上一节更改)orm:fields:actor_name:label:actornamespan:autotype:textactor_age:label:actoragespan:autotype:text改为:type设置为上一步代码中的值actors:label:actorspan:lefttype:actorbox保存上面的代码,访问后台【视频】-【选择任意视频】-编辑:你会看到一个新的字段标签“Actor”出现,这意味着我们的设置生效了,但是没有任何显示。如何编辑为了显示实际的字段我们需要编辑文件:raiseinfomoviesformwidgetsactorboxpartials_widget.htm我们可以尝试添加一个表单描述,我们只需要编辑这个文件即可control控件显示内容以及与表数据的关联。.select2-container{width:100%!important;显示:块;}aaabbbcccdddeeefff刷新页面,现在我们硬编码了,演员的实际信息没有放进去。所以,其实我们没有办法保存这些信息。我们将在下一节中解决这个问题。