Merge branch 'yongpxu-dev' of https://gitee.com/cunkebao/cunkebao_v3 into yongpxu-dev
# Conflicts: # Moncter/app/controller/UserController.php resolved by yongpxu-dev version
This commit is contained in:
37
Moncter/app/model/User.php
Normal file
37
Moncter/app/model/User.php
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
// app/model/User.php
|
||||||
|
namespace app\model;
|
||||||
|
|
||||||
|
use MongoDB\Laravel\Eloquent\Model;
|
||||||
|
use MongoDB\Laravel\Relations\HasMany; // 若需关联查询(可选)
|
||||||
|
|
||||||
|
class User extends Model
|
||||||
|
{
|
||||||
|
// 对应 MongoDB 集合名(默认复数,可自定义)
|
||||||
|
protected $collection = 'users';
|
||||||
|
|
||||||
|
// 主键(MongoDB 默认 _id,无需修改,自动转为字符串)
|
||||||
|
protected $primaryKey = '_id';
|
||||||
|
|
||||||
|
// 主键类型(官方推荐显式声明)
|
||||||
|
protected $keyType = 'string';
|
||||||
|
|
||||||
|
// 允许批量赋值的字段(白名单)
|
||||||
|
protected $fillable = ['name', 'age', 'email', 'avatar'];
|
||||||
|
|
||||||
|
// 自动转换字段类型(ObjectId 转字符串、日期转 Carbon)
|
||||||
|
protected $casts = [
|
||||||
|
'_id' => 'string',
|
||||||
|
'age' => 'integer',
|
||||||
|
'created_at' => 'datetime',
|
||||||
|
'updated_at' => 'datetime',
|
||||||
|
'tags' => 'array', // 支持数组类型(MongoDB 原生支持数组)
|
||||||
|
];
|
||||||
|
|
||||||
|
// 自动维护时间戳(created_at/updated_at,默认启用)
|
||||||
|
// 若不需要可关闭:public $timestamps = false;
|
||||||
|
|
||||||
|
// 自定义时间戳字段名(可选)
|
||||||
|
// const CREATED_AT = 'create_time';
|
||||||
|
// const UPDATED_AT = 'update_time';
|
||||||
|
}
|
||||||
@@ -26,7 +26,8 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php": ">=8.1",
|
"php": ">=8.1",
|
||||||
"workerman/webman-framework": "^2.1",
|
"workerman/webman-framework": "^2.1",
|
||||||
"monolog/monolog": "^2.0"
|
"monolog/monolog": "^2.0",
|
||||||
|
"mongodb/laravel-mongodb": "^4.0"
|
||||||
},
|
},
|
||||||
"suggest": {
|
"suggest": {
|
||||||
"ext-event": "For better performance. "
|
"ext-event": "For better performance. "
|
||||||
|
|||||||
2006
Moncter/composer.lock
generated
2006
Moncter/composer.lock
generated
File diff suppressed because it is too large
Load Diff
27
Moncter/config/database.php
Normal file
27
Moncter/config/database.php
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
return [
|
||||||
|
// 默认数据库连接(可选改为 mongodb)
|
||||||
|
'default' => 'mysql', // 若需全局用 MongoDB,改为 'mongodb'
|
||||||
|
|
||||||
|
'connections' => [
|
||||||
|
// ... 其他连接(如 mysql)保持不变
|
||||||
|
|
||||||
|
// MongoDB 官方连接配置
|
||||||
|
'mongodb' => [
|
||||||
|
'driver' => 'mongodb',
|
||||||
|
'dsn' => 'mongodb://127.0.0.1:27017', // 集群可写:mongodb://node1:27017,node2:27017
|
||||||
|
'database' => 'Moncter', // 目标数据库名
|
||||||
|
'username' => 'Moncter', // 无认证则省略
|
||||||
|
'password' => '123456', // 无认证则省略
|
||||||
|
'options' => [
|
||||||
|
'replicaSet' => '', // 副本集名称(无则留空)
|
||||||
|
'ssl' => false, // 是否启用 SSL
|
||||||
|
'connectTimeoutMS' => 3000, // 连接超时
|
||||||
|
'socketTimeoutMS' => 5000, // 读写超时
|
||||||
|
// 认证相关(若 MongoDB 启用认证)
|
||||||
|
'authSource' => 'admin', // 认证数据库(默认 admin)
|
||||||
|
'authMechanism' => 'SCRAM-SHA-256', // 认证机制(默认推荐)
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
];
|
||||||
46
Moncter/go.sh
Executable file
46
Moncter/go.sh
Executable file
@@ -0,0 +1,46 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail # 严格模式:报错立即退出、禁止未定义变量、管道错误触发退出
|
||||||
|
|
||||||
|
# ================= 配置项(可根据实际情况修改)=================
|
||||||
|
# PHP 脚本路径(相对路径/绝对路径均可,推荐绝对路径更稳定)
|
||||||
|
PHP_SCRIPT="start.php"
|
||||||
|
# PHP 解释器路径(默认自动查找,若提示 php 未找到,手动指定如 /usr/bin/php)
|
||||||
|
PHP_BIN=$(which php || echo "/usr/bin/php")
|
||||||
|
# ==============================================================
|
||||||
|
|
||||||
|
# 1. 检查 PHP 解释器是否存在且可执行
|
||||||
|
if [ ! -x "$PHP_BIN" ]; then
|
||||||
|
echo -e "\033[31m错误:未找到可执行的 PHP 解释器!\033[0m"
|
||||||
|
echo " 解决方案:"
|
||||||
|
echo " 1. 安装 PHP:sudo apt install php-cli(Ubuntu/Debian)或 sudo dnf install php-cli(CentOS/RHEL)"
|
||||||
|
echo " 2. 若已安装,手动修改脚本中的 PHP_BIN 为实际路径(通过 which php 查询)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 2. 检查 PHP 脚本是否存在
|
||||||
|
if [ ! -f "$PHP_SCRIPT" ]; then
|
||||||
|
echo -e "\033[31m错误:未找到脚本文件 $PHP_SCRIPT!\033[0m"
|
||||||
|
echo " 请确保脚本与 $PHP_SCRIPT 在同一目录,或修改脚本中的 PHP_SCRIPT 为绝对路径"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 3. 给 PHP 脚本添加执行权限(自动修复权限问题)
|
||||||
|
if [ ! -x "$PHP_SCRIPT" ]; then
|
||||||
|
echo -e "\033[33m警告:$PHP_SCRIPT 缺少执行权限,正在自动添加...\033[0m"
|
||||||
|
chmod u+x "$PHP_SCRIPT" || {
|
||||||
|
echo -e "\033[31m错误:添加执行权限失败,请用 sudo 运行脚本!\033[0m"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 4. 执行核心命令(带日志输出优化)
|
||||||
|
echo -e "\033[32m=== 开始执行:$PHP_BIN $PHP_SCRIPT start ===\033[0m"
|
||||||
|
$PHP_BIN "$PHP_SCRIPT" start
|
||||||
|
|
||||||
|
# 5. 执行结果判断
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo -e "\033[32m=== 执行成功!===\033[0m"
|
||||||
|
else
|
||||||
|
echo -e "\033[31m=== 执行失败!请查看上方错误信息 ===\033[0m"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
0
Moncter/start.php
Normal file → Executable file
0
Moncter/start.php
Normal file → Executable file
25
Moncter/数据库列表.md
Normal file
25
Moncter/数据库列表.md
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
KR
|
||||||
|
KR_KR
|
||||||
|
KR_LinkedIn
|
||||||
|
KR_存客宝
|
||||||
|
KR_存客宝_四表重构KR_KR版
|
||||||
|
KR_国外
|
||||||
|
KR_户口
|
||||||
|
KR_京东
|
||||||
|
KR_酒店
|
||||||
|
KR_卡套私域
|
||||||
|
KR_快递
|
||||||
|
KR_魔兽世界
|
||||||
|
KR_企业
|
||||||
|
KR_企业名录
|
||||||
|
KR_人才库
|
||||||
|
KR_商城
|
||||||
|
KR_手机
|
||||||
|
KR_顺丰
|
||||||
|
KR_淘宝
|
||||||
|
KR_腾讯
|
||||||
|
KR_投资
|
||||||
|
KR_微博
|
||||||
|
KR_香港在大陆投资企业名录
|
||||||
|
KR_销售额3000万元-5000万元企业名录
|
||||||
|
KR_游戏
|
||||||
Reference in New Issue
Block a user