T-DOC
  • Laravel-11
  • Laravel-10
  • Laravel-6X
  • Laravel-5.5
Dcat-Admin
  • Yii2
  • 重构2
  • Laravel-11
  • Laravel-10
  • Laravel-6X
  • Laravel-5.5
Dcat-Admin
  • Yii2
  • 重构2
  • 入门

    • 简介
    • 安装
    • 1.x升级指南
    • 版本升级
    • 快速开始
    • 开发前必读
    • 主题与颜色
    • 静态资源
    • 视图与自定义页面
    • 多应用 (多后台)
    • JS组件
    • 常见问题
    • Laravel Octane
  • 数据表格

    • 基本使用
    • 列的使用和扩展
    • 列的显示和扩展
    • 行的使用和扩展
    • 工具栏
    • 树状表格
    • 组合表头
    • 数据来源以及查询条件
    • 关联关系
    • 查询过滤
    • 列过滤器
    • 快捷搜索
    • 规格筛选器
    • 数据导出
    • 快捷创建
    • 行内编辑
    • 事件
    • 字段翻译
    • 数据软删除
    • 头部和脚部
    • 异步渲染
  • 数据表单

    • 基本使用
    • 图片/文件上传
    • 字段的使用
    • 字段扩展
    • 数据源
    • 表单弹窗
    • 关联关系
    • JSON表单
    • 分步表单
    • 表单验证
    • 工具表单
    • 事件以及表单响应
    • 初始化
    • 表单布局
    • 字段翻译
    • 字段动态显示
  • 数据详情

    • 基本使用
    • 字段显示
    • 关联关系
    • 字段显示扩展
    • 初始化
    • 字段翻译
  • 模型树

    • 基本使用
  • 数据仓库

    • 基本使用
  • 动作

    • 基本使用
    • 数据表格
    • 数据表单
    • 数据详情
    • 模型树
  • 多语言

    • 基本使用
  • 开发扩展

    • 扩展基本使用
    • 开发扩展
  • 页面组件

    • 异步加载
    • 图表
    • 数据统计卡片
    • 模态窗 (Modal)
    • 工具表单
    • 下拉菜单
    • 单/复选框
    • 选项卡
    • 警告框
    • 提示窗
    • Markdown
    • 卡片
  • 区块 (section)

    • 区块基本使用
  • 动作以及表单响应

    • 动作以及表单响应
  • 权限控制

    • 权限控制
  • 菜单

    • 菜单基本使用
  • 帮助函数

    • 帮助函数
  • 开发工具

    • 基本使用
  • 自定义登陆认证

    • 自定义登录
  • 自定义头部导航

    • 自定义头部导航条
  • 更新日志

    • BETA版本更新日志
    • 更新日志

字段显示

HTML

Since v1.7.0

通过html方法可以在详情页插入一段不显示label的HTML代码

// 传入字符串
$show->html('<br/>');

// 传入视图
$show->html(view(...));

// 传入闭包
$show->html(function () {
    // 获取字段信息
    $id = $this->id;
    $username = $this->username;

    return view(..., ['id' => $id]);
});

分隔线

如果要在字段之间添加一条分隔线:

$show->divider();

换行

如果要在字段之间使用换行:

$show->newline();

修改显示内容

用下面的方法修改显示内容

$show->title()->as(function ($title) {
    // 获取当前行的其他字段
    $username = $this->username;

    return "<{$title}> {$username}";
});

$show->contents()->as(function ($content) {
    return "<pre>{$content}</pre>";
});

帮助方法

帮助方法与数据表格字段帮助方法使用一致,可参考帮助方法。

内置显示扩展方法

下面是通过as方法内置实现的几个常用的显示样式:

view

view方法可以引入一个视图文件。

// 模板中接收以下三个变量:
// name 字段名称
// value 字段值
// model 当前行数据
$show->content->view('admin.fields.content');

explode

explode方法可以把字符串分割为数组。

$show->tag->explode()->label();

// 可以指定分隔符,默认","
$show->tag->explode('|')->label();

prepend

prepend 方法用于给 string 或 array 类型的值前面插入内容。

// 当字段值是一个字符串
$show->email->prepend('mailto:');

// 当字段值是一个数组
$show->arr->prepend('first item');

从v1.2.5版本开始,prepend方法允许传入闭包参数

$show->email->prepend(function ($value, $original) {
    // $value 是当前字段值
    // $original 是当前字段从数据库中查询出来的原始值

    // 获取其他字段值
    $username = $this->username;

    return "[{$username}]";
});

append

append 方法用于给 string 或 array 类型的值后面插入内容。

// 当字段值是一个字符串
$show->email->append('@gmail.com');

// 当字段值是一个数组
$show->arr->append('last item');

从v1.2.5版本开始,append方法允许传入闭包参数

$show->email->prepend(function ($value, $original) {
    // $value 是当前字段值
    // $original 是当前字段从数据库中查询出来的原始值

    // 获取其他字段值
    $username = $this->username;

    return "[{$username}]";
});

image

字段avatar的内容是图片的路径或者url,可以将它显示为图片:

$show->avatar()->image();

image()方法的参数参考Field::image()

file

字段document的内容是文件的路径或者url,可以将它显示为文件:

$show->avatar()->file();

file()方法的参数参考Field::file()

link

字段homepage的内容是url链接,可以将它显示为HTML链接:

$show->homepage()->link();

link()方法的参数参考Field::link()

label

将字段tag的内容显示为label:

$show->tag()->label();

label()方法的参数参考Field::label()

badge

将字段rate的内容显示为badge:

$show->rate()->badge();

badge()方法的参数参考Field::badge()

using

如果字段gender的取值为f、m,分别需要用女、男来显示

$show->gender()->using(['f' => '女', 'm' => '男']);

dot

通过dot方法可以在列文字前面加上一个带颜色的圆点

Since v1.2.5 支持Dcat\Admin\Color类中内置的所有颜色

use Dcat\Admin\Admin;

$show->state
    ->using([1 => '未处理', 2 => '已处理', ...])
    ->dot(
        [
            1 => 'primary',
            2 => 'danger',
            3 => 'success',
            4 => Admin::color()->info(),
        ], 
        'primary' // 第二个参数为默认值
    );

显示文件尺寸

如果字段数据是表示文件大小的字节数,可以通过调用filezise方法来显示更有可读性的文字

$show->field('file_size')->filesize();

这样数值199812019将会显示为190.56 MB

Last Updated:
Contributors: Hans
Prev
基本使用
Next
关联关系