资讯专栏INFORMATION COLUMN

October CMS - 快速入门 13 建立自定义Form Widgets

myshell / 2759人阅读

摘要:所以,实际上我们没有办法保存这些信息。下一节我们将解决这个问题。

在上一节中我们是使用repeater字段存储演员信息的,当然这不是最佳的方式,我们希望,演员的信息能够存储在多带带的表中,而且演员的信息可能需要更多的字段进行存储。然后将演员表和其他表进行关联,就好像视频表和风格表之间的关联一样。

只是我们不得不使用类似于上面的方式,采用复选框的形式进行风格的选择。这个肯定不是让你最满意的方式,在这一节和下一节,我们将讨论如何自定义表单控件,并将小部件连接到视频表单,并且将视频与表单对应的数据进行关联。

建立如下的文件结构

编辑Actorbox.php文件
pluginsraiseinfomoviesformwidgetsActorbox.php

 "Actorbox",
            "description" => "Field for adding actors",
        ];
    }

    public function render()
    {
        return $this->makePartial("widget");
    }

    public function loadAssets()
    {
        $this->addCss("css/select2.css");
        $this->addJs("js/select2.js");
    }

    
}

编辑文件:pluginsraiseinfomoviesPlugin.php

public function registerFormWidgets()
{
    return [
      "RaiseinfoMoviesFormWidgetsActorbox" => [
          "label" => "Actorbox Field",
          "code" => "actorbox"
      ]
    ];
}

编辑文件:pluginsraiseinfomoviesmodelsmoviefields.yaml
请将下面的代码删除(上一节的改动)

actors:
    label: 演员
    prompt: "Add new item"
    span: auto
    type: repeater
    form:
        fields:
            actor_name:
                label: 演员姓名
                span: auto
                type: text
            actor_age:
                label: 演员年龄
                span: auto
                type: text

更改为:type设置的就是上一步中的code的值

actors:
    label: 演员
    span: left
    type: actorbox

保存上述代码并访问后台【视频】——【选择任意视频】——编辑:会看见出现了新的字段标签“演员”。这说明我们的设置起作用了,但是,没有显示任何内容。如何编辑用

为了显示实际字段我们需要编辑文件:raiseinfomoviesformwidgetsactorboxpartials_widget.htm
我们可以试着添加一个表单


说明,我们只需要编辑这个文件,就可以控制此控件的显示内容及与表数据的关联。






刷新页面,现在我们是硬编码,并没有把演员的实际信息放进去。所以,实际上我们没有办法保存这些信息。下一节我们将解决这个问题。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28851.html

相关文章

  • October CMS - 快速入门 14 保存Form Widget的数据

    摘要:下面修改部件,实现数据保存首先需要准备数据变量,给小部件使用接下来就可以修改插件了现在显示了演员表中的所有演员的名,但是,没有显示所有演员的姓。 上节我们只是建立了小插件,但是数据是模拟的,我们希望将数据存储起来,那么我们就需要通过关联表将数据与视频表关联并保存,下面我们打开Builder,创建演员表 【database】 showImg(https://segmentfault.co...

    GT 评论0 收藏0
  • October CMS - 快速入门 15 - 通过Form Widget添加新数据

    摘要:我们将采用方式完成,在提交保存视频之前,通过方式实现提前于保存视频之前,保存演员信息。我们再在数据库中确认一下下面,我们对输入的用户姓名进行分离。 我们试着直接在Select中输入新的演员showImg(https://segmentfault.com/img/bVbcqpZ?w=386&h=276); 点击保存 showImg(https://segmentfault.com/img...

    wing324 评论0 收藏0
  • October CMS - 快速入门 2 基本概念

    摘要:项目源码地址文章视频基本界面的后台管理很简单,没有多余的功能。首页部分是仪表盘显示了系统的基本信息。修改完成后,在编辑器里面保存此文件。在上部出现了一个悬浮框,名称为帖子列表。 项目源码地址:https://gitee.com/494901823/O... 文章视频:http://www.365yg.com/i6567357... 基本界面 showImg(https://segmen...

    kycool 评论0 收藏0
  • October CMS - 快速入门 5 创建插件

    摘要:创建插件对于来讲是很简单的事情,因为,提供了一个插件构建器具体步骤这里就不赘述了。安装完成后,会出现上图所示的菜单创建自己的插件的方法是点击如下图所示的小按钮。 创建插件对于October来讲是很简单的事情,因为,October提供了一个插件构建器:RainLab.Builder showImg(https://segmentfault.com/img/bVbcoxL?w=1266&h...

    macg0406 评论0 收藏0
  • October CMS - 快速入门 16 - 建立简单的组件

    摘要:首先传入演员列表,并循环输出刷新首页,就看见显示的演员的列表到目前为止,最简单的组件我们就创建好了,我们可以继续扩展其功能。 本节将创建有关actor的组件:首先创建一下目录结构 showImg(https://segmentfault.com/img/bVbcqwE?w=313&h=405); 首先创建插件的基本功能 namespace RaiseinfoMoviesComponen...

    1fe1se 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<