关于Drupal的数据表查看
来源:互联网 发布:行业分析 知乎 编辑:程序博客网 时间:2024/06/06 00:55
在很多时候我们协同开发,首先需要做的就是对数据表结构做了解,而处于某些原因不能直接分享数据库账号密码,所以做了这么一个功能来查看表结构;
该表结构显示的是基于Drupal的开发,前端利用bootstrap来友好显示。
下面贴出theme后台代码:
function bns_preprocess_html__main(array &$variables){ $entityManager = Drupal::service('entity.manager'); $contentTypes = $entityManager->getStorage('node_type')->loadMultiple(); $contentTypesList = []; foreach ($contentTypes as $k => $contentType) { $contentTypesList[$k]['title'] = $contentType->id() . '(' . $contentType->label() . ')'; $contentTypesList[$k]['id'] = $contentType->id(); $fields = array_filter( $entityManager->getFieldDefinitions('node', $contentType->id()), function ($field_definition) { return $field_definition instanceof \Drupal\Core\Field\FieldConfigInterface; } ); foreach ($fields as $k1 => $v1) { $contentTypesList[$k]['fields'][$k1]['name'] = $k1; $contentTypesList[$k]['fields'][$k1]['des'] = $v1->getDescription(); $contentTypesList[$k]['fields'][$k1]['field_type'] = $v1->getType(); $contentTypesList[$k]['fields'][$k1]['label'] = $v1->getLabel(); } } $variables['content_types'] = $contentTypesList; }
前端页面的显示:
- 引入资源(cdn资源,可能会遇到404情况):
<link href="//cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"> <script src="//cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> <script src="//cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
- html结构
<body> <div class="panel-group" id="accordion"> <span class="label label-success">程序结构</span> {% for content_type in content_types %} <div class="panel panel-default"> <div class="panel-heading"> <h4 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#{{ content_type.id }}"> {{ content_type.title }} </a> </h4> </div> <div id="{{ content_type.id }}" class="panel-collapse collapse"> <div class="panel-body"> <table class="table"> <thead> <tr> <th>名称</th> <th>label</th> <th>类型</th> <th>描述</th></tr> </thead> <tbody> {% for field in content_type.fields %} <tr class="active"> <td>{{ field.name }}</td> <td>{{ field.label }}</td> <td> {{ field.field_type }}</td> <td>{{ field.des }}</td></tr> {% endfor %} </tbody> </table> </div> </div> </div> {% endfor %} </div></body>
好了,基本到此为止,然后我们来看看效果吧
阅读全文
0 0
- 关于Drupal的数据表查看
- 关于drupal 触发器的学习
- 查看每个数据表的大小
- 查看SQLServer数据表的详细信息
- 查看SQLServer数据表的详细信息。
- 查看数据表暂用的空间
- 查看数据表
- 查看并修改mysql数据库、数据表、数据表字段的编码
- 关于Drupal与jQuery的关系
- Drupal 关于节点(nodes)的理解
- 关于创建数据表的设想
- 关于数据表的念想
- 关于框架的数据表模型
- 如何查看mysql数据表的存储引擎
- 查看数据库和数据表的定义
- 查看MySQL中数据表的数据量
- mysql数据库/数据表的创建/查看
- 查看数据库和数据表的定义2
- 头文件为什么只声明而不定义,而类定义又可以在头文件中那
- vim tab键默认4空格
- 【模板】最短路径(Dijkstra 4heap)
- linux 定时器的使用
- Java中Filter、Listener,拦截器的学习,listener、 filter、servlet 加载顺序及其详解
- 关于Drupal的数据表查看
- idea新建文件报错的临时解决方法
- Android开发之BlueTooth--最简单的Andorid传统蓝牙通讯Demo
- Python中函数的参数定义和可变参数
- 关于内存加载DLL后修复重定位的问题
- ODOO更多中添加按钮
- 解压.tar.gz出错gzip: stdin: not in gzip format tar: /Child returned status 1 tar: Error is not recoverab
- 第三十四讲项目1-分数的累加
- 莫名被封杀