开源:yyy的数据字典

开源:yyy的数据字典

本文初次编写时间:2024-07-07

需求

1、想每次拿到陌生的数据库时方便的查看数据字典
2、可以修改字段的注释,修改表注释,但又不要对数据库有任何修改。

实现

  • 所有修改内容都保存在项目自身的 sqlite 数据库中。
  • 前后端框架分别用 amis 和 Laravel。
  • 后端库除了Laravel,还有一个 md 转 html 的库,composer install时就这俩。
  • 路由前缀虽有一定安全功能,但安全起见,部署项目最好在本机或公司内网。
  • 经慎重考虑,决定将项目命名为 「yyy的数据字典」😀

安装流程

1、必要环境

  • 操作系统不限制
  • 安装有 php7.2 或以上的版本,php 8 也都行。
  • 安装有 composer+ php 环境已安装好 PDO,pdo_mysql,pdo_sqlite,fileinfo
  • php.ini 不可禁止函数 putenv,proc_open,pcntl_signal

2、下载

代码放 gitee 仓库
php7.2 至 php8.0 使用下面这个版本

git clone https://gitee.com/three_kingdoms_of_zhang/yyy_dict.git

php8.1 及以上使用下面这个版本

git clone https://gitee.com/three_kingdoms_of_zhang/php81_yyy_dict.git

3、安装

cd yyy_dict 或者 cd php81_yyy_dict
composer -vvv install  
php artisan dict:init  
php artisan migrate
php artisan dict:route  

这时会提示如下的文字:
安全前缀已经创建成功,您可以类似使用如下地址打开网站:
http://localhost:port/xxxxxxx/dict
上面的xxxxx之类的就是路由前缀。

4、启动项目

有两种方法均可。

4-1. 使用 nginx 配置,方法略。

4-2. 无需 nginx 配置,使用 artisan 命令,类似如下用法。

 php artisan serve --host=127.0.0.1 --port=80

或者类似:

 php artisan serve --host=0.0.0.0 --port=8720

host 和 port 参数自行定义。

5、用浏览器访问

6、附图

常见问题

1、关于 composer install 时的问题1

composer install 遇到困难的时候,参考这个帖子重构 Composer 源管理工具 CRM 为 Composer 插件
我就总结一下他的精华,如下几个命令。

composer global require slince/composer-registry-manager composer repo:ls
composer repo:use huawei (最后这个参数看情况,用好用的,轮流测试)

另外,如开始的 composer global 命令也不行的话,需先自行百度。找个能用的 composer 镜像地址顶一下。
比如:composer config -g repo.packagist composer mirrors.aliyun.com/composer/
比如:composer config -g repo.packagist composer mirrors.cloud.tencent.com/composer...

而且需不能禁用函数 pcntl_signal

另外,如果是库版本冲突,则应删除 composer.lock 重试

2、 composer install 时有如下错误或其他所有错误,应该重装composer

syntax error, unexpected ‘fn’ (T_STRING), expecting :: (T_PAAMAYIM_NEKUDOTAYIM)

这是 composer 的安装问题 ,尝试重新安装composer。

  • rm /usr/bin/composer
  • rm /usr/local/bin/composer
  • 确保 php -v 命令正常显示 ,如不能,需用 ln -s 原php可执行文件 /usr/bin/php
  • curl -o /usr/local/bin/composer mirrors.aliyun.com/composer/compos...
  • chmod +x /usr/local/bin/composer
  • 设置合适的 composer 镜像地址。命令见上。
  • 删除 yyy_dict 目录下的coposer.lock 文件和 vendor 目录。
  • 继续 composer -vvv install

3、项目打不开,web连接错误。

如果是用 php artisan serve命令,且使用了容器的方式,
请检查是 php 的容器需要暴露端口,而不是 nginx 容器,且端口不重复。

4、mysql连接不上 。

当添加数据库连接时,始终连接不上。
我的代码有提示的,各种连接不上的原因,请仔细查看。
如果用的容器技术,请注意端口,容器名称等因素。

5、在容器内使用 php artisan serve –host=0.0.0.0,端口 8000也并未被占用。但宿主机无监听

解决办法
5-1、 不用windows系统,使用纯linux来使用容器。
5-2、 或者干脆不用容器。

总结

1、有bug请不吝告知,请带上细节,比如操作系统,php版本等。
2、代码全部开源,能直接看源码了解项目工作的细节。
2、希望大家玩的开心:confused:

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
58
粉丝
11
喜欢
63
收藏
104
排名:485
访问:1.8 万
私信
所有博文
社区赞助商