开源: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、用浏览器访问
- 需要把提示的 http://localhost:port/xxxxxxx/dict 中的域名,端口,路由前缀分别替换成您启动时定义的参数。
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、希望大家玩的开心
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: