October cms-Backend (后端-views-partials)

views & partials

Partials and hints

后端partials是在控制器的views目录中的扩展名为htm的文件。
partials文件名应以下划线开头:_partial.htm
partials可以从一个后端page或者另一个partials中渲染出来
用controller的makePartial方法渲染
该方法具有两个参数-partials名称和要传递给部分的变量的可选数组。
例:

<?= $this->makePartial('sidebar', ['showHeader' => true]) ?>

Hint partials

你可以渲染出一个用户可以隐藏的后端信息面板 我们叫做提示hints
为了记住提示是否已隐藏,第一个参数应该是唯一键。
第二个参数是对partial视图的引用。
除了某些提示属性外,第三个参数可以是一些传递给partial视图的额外视图变量。

<?= $this->makeHintPartial('my_hint_key', 'my_hint_partial', ['foo' => 'bar']) ?>

您还可以通过将键值设置为空值来禁用隐藏提示的功能。此提示将始终显示:

<?= $this->makeHintPartial(null, 'my_hint_partial') ?>

可以使用以下属性:

属性描述
type设置提示hint的颜色,支持的类型:danger, info, success, warning. 默认值:info。
title在提示中添加标题部分。
subtitle除了标题,在标题部分添加第二行
icon除标题外,还向标题栏添加图标

检查hint是否被隐藏

用isBackendHintHidden方法
它只有一个参数,这是您在对makeHintPartial的原始调用中指定的唯一键。
如果隐藏了提示,则该方法将返回true,否则返回false:

<?php if ($this->isBackendHintHidden('my_hint_key')): ?>
    <!-- Do something when the hint is hidden -->
<?php endif ?>

布局与子布局

后端布局位于插件的可选layouts /目录中。使用控制器对象的$ layout属性设置自定义布局。默认为default。

/**
 * @var string Layout to use for the view.
 */
public $layout = 'mycustomlayout';

布局还提供了将自定义CSS类附加到BODY标签的选项。可以使用控制器的$ bodyClass属性设置。

/**
 * @var string Body CSS class to add to the layout.
 */
public $bodyClass = 'compact-container';

这些body类可用于默认布局:

  • compact-container - 紧凑布局 所有侧面无padding
  • slim-container - 窄布局 左右侧无padding
  • breadcrumb-flush - 告诉页面面包屑与下面的元素齐平放置。

Form with sidebar

布局也可以与partials相同地使用,其作用类似于全局partials。
系统提供了一个称为“带边栏的表单(form-with-sidebar)”的示例,并演示了一种实现子布局结构的新颖方法。
在使用此布局样式之前,请通过在controller的action方法或构造函数中对其进行设置,确保您的controller使用body class:compact-container。

$this->bodyClass = 'compact-container';

此布局使用两个占位符,一个主要内容区域称为form-contents,另一个免费边栏称为form-sidebar。这是一个例子

<!-- Primary content -->
<?php Block::put('form-contents') ?>
    Main content
<?php Block::endPut() ?>

<!-- Complimentary sidebar -->
<?php Block::put('form-sidebar') ?>
    Side content
<?php Block::endPut() ?>

<!-- Layout execution -->
<?php Block::put('body') ?>
    <?= Form::open(['class'=>'layout stretch']) ?>
        <?= $this->makeLayout('form-with-sidebar') ?>
    <?= Form::close() ?>
<?php Block::endPut() ?>

通过执行最后一节的布局,覆盖body占位符,这被应用于每一个后端布局
它使用 HTML标签包装所有内容,并呈现称为form-with-sidebar的子布局。
该文件位于modules\backend\layouts\form-with-sidebar.htm中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值