跳到内容

显示视图

编辑此页

现在您的管理后台允许您创建、编辑和列出博客文章和分类。但是,如果您只想查看一篇博客的详细视图呢?本章将教您如何使用显示视图。

如果您仍然在 https://127.0.0.1:8000/admin/app/blogpost/list 页面,您会在每篇博客文章行上看到一个显示按钮。但是当您点击它时,您会看到“没有可用的表单”消息。这是因为 Sonata 不知道要显示哪些字段,现在让我们配置一些。

配置显示映射器

如果您现在熟悉 FormMapperListMapper,那么 ShowMapper 看起来会非常相似

1
2
3
4
5
6
7
8
9
10
11
12
13
// src/Admin/BlogPostAdmin.php

use Sonata\AdminBundle\Show\ShowMapper;

protected function configureShowFields(ShowMapper $show): void
{
    $show
        ->add('id')
        ->add('title')
        ->add('body')
        ->add('category.name')
    ;
}

使用组和标签页

FormMapper 类似,ShowMapper 也支持将字段分组在一起

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// src/Admin/BlogPostAdmin.php

protected function configureShowFields(ShowMapper $show): void
{
    $show
        ->tab('Post')
            ->with('Content', ['class' => 'col-md-9'])
                // ...
            ->end()
            ->with('Meta data', ['class' => 'col-md-3'])
                // ...
            ->end()
        ->end()

        ->tab('Publish Options')
            // ...
        ->end()
    ;
}

总结

您已经学习了如何查找要编辑的文章、如何创建漂亮的列表视图、如何在列表中添加搜索、排序和过滤选项。现在您已经学习了如何显示一篇文章的详细信息。

可能有一些非常困难的事情,但想象一下自己编写所有内容的难度!既然您现在已经掌握了基本知识,您可以开始阅读文档中的其他文章,例如

这项工作,包括代码示例,均根据 Creative Commons BY-SA 3.0 许可协议获得许可。
目录
    版本