本节将创建与actor相关的组件:首先创建目录结构首先创建插件命名空间Raiseinfo\Movies\Components的基本功能;使用Cms\Classes\ComponentBase;使用Raiseinfo\Movies\Models\Actor;classActorsextendsComponentBase{public$actors;publicfunctioncomponentDetails(){//TODO:实施componentDetails()方法。return['name'=>'演员名单','description'=>'演员名单'];}publicfunctiononRun(){$this->actors=$this->loadActors();}protectedfunctionloadActors(){returnActor::all();}}registercomponentspublicfunctionregisterComponents(){return['Raiseinfo\Movies\Components\Actors'=>'actors'];}切换到后台,我们可以看到刚才创建的组件已经存在组件中添加actorlistonthehomepage打开首页,刷新页面,发现没有任何输出。这是因为我们还没有写组件的HTML,所以不会有显示。先传入演员列表,循环出{%setactors=__SELF__.actors%}
- {%foractorinactors%}
- {{actor.name}}{{actor.lastname}} {%endfor%}