You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SleekCMS的单个模型中添加多个数据值?

解决SleekCMS模型无法添加多条数据的问题

1. 移除模型的单条限制逻辑

SleekCMS里部分模型(比如全局配置类)默认被设计为仅存储单条数据,先打开对应模型文件(比如app/Models/YourModel.php):

  • 删除protected $unique = ['xxx'];这类强制字段唯一的配置项
  • 如果模型代码里有硬编码的first()或firstOrCreate逻辑,也一并移除,改成允许创建新实例的写法

2. 调整数据库表的约束(若有需要)

如果原数据库表存在唯一键约束导致无法插入多条数据,需要修改对应迁移文件:

  • 找到目标表的迁移文件(database/migrations/xxxx_xx_xx_create_xxx_table.php),删除字段定义后的->unique()约束
  • 运行迁移更新表结构:
php artisan migrate:refresh --path=目标迁移文件的完整路径

注意:migrate:refresh会清空表内数据,操作前务必做好备份

3. 修改控制器的存储逻辑

原控制器通常会用updateOrCreate来覆盖已有数据,直接替换为普通的create方法即可:
比如把控制器里的:

$model = YourModel::firstOrCreate([], $request->all());

改成:

$model = YourModel::create($request->all());

如果需要批量提交多条数据,就循环处理前端传来的数组:

foreach ($request->input('items') as $item) {
    YourModel::create($item);
}

4. 适配前端表单(涉及前端时)

如果前端表单是按单条数据设计的,需要调整为支持动态添加字段的样式,让用户可以输入多条数据,提交时以数组格式传递给后端。

内容的提问来源于stack exchange,提问作者Tzar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 12:12:06