8.2 KiB
8.2 KiB
由壹点3D素材 - 快速使用指南
🎉 欢迎使用由壹点3D素材平台!
这是一个专业的3D素材分享平台,采用最新的技术栈和苹果官方设计规范打造。
📦 一、快速安装(三步启动)
步骤1: 安装依赖和初始化数据库
cd /Users/lanmu/Desktop/gongxiangp2
./install.sh
这个脚本会自动:
- ✅ 安装所有npm依赖包
- ✅ 生成Prisma Client
- ✅ 创建数据库表结构
- ✅ 创建上传文件目录
步骤2: 创建管理员账号
方式A: 使用Prisma Studio(推荐)
# 1. 先启动项目
npm run dev
# 2. 打开浏览器访问 http://localhost:3000/register 注册账号
# 3. 在新终端窗口打开Prisma Studio
npm run prisma:studio
# 4. 在浏览器中打开 http://localhost:5555
# 5. 找到 users 表,找到你刚注册的用户
# 6. 点击编辑,将 role 字段从 USER 改为 ADMIN
# 7. 保存
方式B: 使用SQL命令
# 连接数据库
psql postgresql://postgres:FastBuildAI2025SecureDB@149.88.95.87:5432/lobechat
# 执行SQL(替换成你的邮箱)
UPDATE users SET role = 'ADMIN' WHERE email = 'your@email.com';
\q
步骤3: 启动项目
./start.sh
# 或者
npm run dev
🎯 二、功能使用说明
1. 用户注册和登录
注册新账号
- 访问 http://localhost:3000/register
- 填写:
- 邮箱(用于登录)
- 用户名(显示名称)
- 密码(至少6位)
- 确认密码
- 点击"注册"按钮
登录
- 访问 http://localhost:3000/login
- 输入邮箱和密码
- 点击"登录"按钮
2. 上传素材
- 登录后进入首页
- 点击右上角"+ 上传素材"按钮
- 填写信息:
- 预览图: 点击上传区域,选择图片(JPG/PNG)
- 商品型号: 例如"iPhone 15 Pro"
- 场景名称: 例如"办公场景"
- 压缩包: 点击上传区域,选择zip/rar文件
- 点击"确定上传"
注意: 作者花名会自动使用你的登录用户名,无需手动输入。
注意事项:
- 预览图会自动上传到MinIO S3云存储
- 压缩包会保存在服务器本地(uploads目录)
- 首页展示预览图时会自动调整为250x175px
3. 浏览和下载素材
浏览素材
- 首页以卡片网格形式展示所有素材
- 每个卡片显示:
- 预览图(250x175px)
- 商品型号
- 场景名称
- 作者花名
- 上传时间
- 下载按钮
下载素材
- 找到想要的素材
- 点击"下载"按钮
- 浏览器会自动下载压缩包文件
4. 管理员功能
只有管理员账号才能看到"系统设置"入口。
进入管理后台
- 使用管理员账号登录
- 点击顶部导航栏的"系统设置"
素材管理
- 在管理后台选择"素材管理"标签
- 可以查看所有素材的详细信息:
- 预览图缩略图
- 商品型号
- 场景名称
- 作者信息
- 上传时间
- 编辑素材:点击"编辑"按钮可以修改素材信息
- 修改商品型号
- 修改场景名称
- 修改作者花名
- 更换预览图(可选)
- 删除素材:点击"删除"按钮可以删除素材
- 删除后会同时清理数据库记录
用户管理
- 在管理后台选择"用户管理"标签
- 可以查看所有用户信息:
- 用户名
- 邮箱
- 角色(用户/管理员)
- 上传素材数量
- 注册时间
- 点击"删除"按钮可以删除用户
- 删除用户时,该用户的所有素材也会被删除
- 注意: 管理员不能删除自己
🎨 三、界面设计特点(苹果风格)
设计元素
- 圆角: 所有按钮和卡片都使用12px圆角
- 阴影: 柔和的阴影效果,层次分明
- 过渡动画: 所有交互都有平滑的200ms过渡
- 颜色: 蓝色为主色调,清新专业
- 字体: Inter字体,清晰易读
响应式设计
- 手机: 单列布局
- 平板: 2-3列布局
- 桌面: 4列布局
📁 四、文件存储说明
预览图存储(MinIO S3)
- 位置: 云端MinIO S3服务
- 服务器: https://s3.1080p.hk
- 存储桶: jsxiangche
- 路径: 由壹点AI/
- 优点:
- 不占用服务器空间
- 访问速度快
- 自动CDN加速
压缩包存储(本地)
- 位置: 服务器本地
uploads/目录 - 命名:
zip-时间戳-原文件名.zip - 优点:
- 下载速度快
- 管理方便
- 节省云存储成本
🔧 五、常用操作
查看数据库
npm run prisma:studio
访问 http://localhost:5555 可视化管理数据库
重置数据库
npm run prisma:push
这会根据schema.prisma重新创建表结构
查看日志
开发模式下,所有日志会实时显示在终端
停止服务
在运行 npm run dev 的终端按 Ctrl + C
🐛 六、常见问题解决
Q1: 安装失败
问题: 运行install.sh时报错 解决:
- 确保Node.js版本 >= 18
- 检查网络连接
- 尝试手动安装:
npm install
Q2: 数据库连接失败
问题: 启动时提示数据库连接错误 解决:
- 检查.env.local中的DATABASE_URL
- 确保PostgreSQL服务在运行
- 测试数据库连接:
psql postgresql://...
Q3: 图片上传失败
问题: 上传素材时预览图上传失败 解决:
- 检查S3配置是否正确
- 测试S3连接: 访问 https://s3.1080p.hk
- 检查S3_ACCESS_KEY_ID和S3_SECRET_ACCESS_KEY
Q4: 压缩包下载失败
问题: 点击下载按钮没反应 解决:
- 检查uploads目录是否存在
- 检查文件权限:
ls -la uploads/ - 查看浏览器控制台错误信息
Q5: 看不到管理员菜单
问题: 登录后没有"系统设置"入口 解决:
- 确认你的账号role已设置为ADMIN
- 退出后重新登录
- 使用Prisma Studio检查数据库中的role字段
Q6: 端口被占用
问题: 启动时提示3000端口被占用 解决:
# 查找占用3000端口的进程
lsof -i :3000
# 杀死进程(替换PID)
kill -9 <PID>
# 或者使用其他端口
PORT=3001 npm run dev
📊 七、系统要求
服务器要求
- Node.js >= 18.0.0
- 磁盘空间 >= 1GB(用于存储压缩包)
- 内存 >= 512MB
数据库要求
- PostgreSQL >= 12
- 可远程访问
- 支持UUID扩展
网络要求
- 可访问MinIO S3服务
- 建议带宽 >= 10Mbps
🚀 八、生产部署
构建生产版本
npm run build
启动生产服务
npm start
使用PM2管理进程(推荐)
# 安装PM2
npm install -g pm2
# 启动
pm2 start npm --name "3d-material" -- start
# 查看状态
pm2 status
# 查看日志
pm2 logs 3d-material
# 重启
pm2 restart 3d-material
# 停止
pm2 stop 3d-material
使用Nginx反向代理
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
📞 九、技术支持
文档资源
- README.md - 项目概述
- SETUP.md - 详细部署指南
- PROJECT_INFO.md - 完整技术文档
- 快速使用指南.md - 本文档
技术栈文档
✨ 十、使用建议
最佳实践
- 定期备份: 定期备份uploads目录和数据库
- 监控磁盘: 注意uploads目录大小
- 日志管理: 使用PM2或其他工具管理日志
- 安全更新: 定期更新依赖包
性能优化
- 图片优化: 上传前压缩预览图
- 文件限制: 根据需要调整上传文件大小限制
- CDN加速: 考虑使用CDN加速静态资源
- 数据库索引: 数据量大时添加必要的索引
🎊 恭喜!
你已经成功搭建了一个功能完整的3D素材分享平台!
如有任何问题,请参考上述文档或查看代码注释。
祝使用愉快! 🚀