laravel - 将数组传递到 Laravel 中的单列
问题描述
我正在尝试将一些值传递到 laravel 数据库表中的单个列中。
值是这样的 20,45,67,89
但我希望他们像这样进入列
===USER_ID====
20
45
67
89
我已经尝试如下,但没有工作..有什么建议吗?
foreach ($request->val2 as $value){
$str_explode = explode(",",$value);
DB::table('retirement')->insertGetId([
'user_id' => $str_explode,
'amount' => $request->val1,
'week' => $request->week
]);
}
解决方案
我不确定我是否清楚地理解了您的问题,我假设您想将数组插入列:
- 您是否尝试将列设置为迁移到 Json?
- 您是否将模型中的 $casts 设置为 json 或数组?
protected $casts = [ 'user_id' => 'array' ];
然后当你这样做时,你可以在该列中添加一个数组,如
Posts::create(['user_id'=>[1,2,3,4]]);
通常 user_id 字段设置为unsignedBigInt()
,该类型只接受整数,您必须先检查迁移列类型。
推荐阅读
- nlp - 在 ham 与 spam 案例中创建相似性的新特征时,我是否应该在 samp 相似性的平均值中包含垃圾邮件与其自身的相似性?
- reverse-engineering - 打补丁的二进制文件打不开
- android - 如何为 Android CardView 设置半透明背景颜色?
- java - 坚持使用 Java Swing Timer
- r - R 直方图 dbplot 计数条横向使用默认参数
- c++ - 我不知道如何从他的指南中使用 Beej 的程序
- c# - 编译器是否优化了在其声明中由 lambda 初始化的仿函数字段以使 lambda 静态?
- swift - 从 Swift 中的 URLSession 返回数据
- java - 如何获取对象的类并将其用作泛型类的参数?
- c++ - 使用 libcurl“多”接口进行单个文件下载 - C++