October CMS - 快速入门 16 - 建立简单的组件

本节将创建有关actor的组件:
首先创建一下目录结构

clipboard.png

首先创建插件的基本功能

namespace Raiseinfo\Movies\Components;

use Cms\Classes\ComponentBase;
use Raiseinfo\Movies\Models\Actor;


class Actors extends ComponentBase
{
    public $actors;
    public function componentDetails()
    {
        // TODO: Implement componentDetails() method.
        return [
            'name' => 'Actor List',
            'description' => 'List of actors'
        ];
    }

    public function onRun()
    {
        $this->actors = $this->loadActors();
    }

    protected function loadActors()
    {
        return Actor::all();
    }
}

注册组件

public function registerComponents()
{
    return [
        'Raiseinfo\Movies\Components\Actors' => 'actors'
    ];
}

切换到后台,我们可以看见组件里面已经有了我们刚刚创建的组件了

clipboard.png

在首页添加演员列表

clipboard.png

打开首页,刷新页面,发现没有任何输出,这是因为,我们没有编写组件的HTML,所以不会有任何显示。
首先传入演员列表,并循环输出

{% set actors = __SELF__.actors %}


<ul>
    {% for actor in actors %}
        <li>{{ actor.name }} {{ actor.lastname }}</li>
    {% endfor %}
</ul>

刷新首页,就看见显示的演员的列表:

clipboard.png

到目前为止,最简单的组件我们就创建好了,我们可以继续扩展其功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值