帮我保存json到db。表字段类型 - 文本。 我有模型浇铸阵列Laravel 5.4将json保存到数据库
class Salesteam extends Model
{
protected $casts = [
'team_members' => 'array'
];
}
我想要得到的JSON这样{“指标”:“用户id”},并将其存储到数据库中。 例子:
{"1":"7","2":"14","3":"25","4":"11"}
我有销售组型号和“team_members”以dB为单位列保存所有用户ID属于这个团队。 我的代码通过ID查找团队,获取所有'team_members'属性并为该团队添加新用户。我希望以json格式存储所有用户并在添加新用户标识时增加索引。
销售组属性:
"id" => 20
"salesteam" => "Admin"
"team_leader" => 0
"invoice_target" => 884.0
"invoice_forecast" => 235.0
"team_members" => "[1,66,71]"
"leads" => 0
"quotations" => 0
"opportunities" => 0
"notes" => ""
"user_id" => 1
"created_at" => "2017-09-22 09:13:33"
"updated_at" => "2017-09-22 13:10:25"
"deleted_at" => null
代码来添加新用户团队:
$salesTeam = $this->model->find($salesTeamId);
$teamMembers = $salesTeam->team_members;
$teamMembers[] = $userId;
$salesTeam->team_members = $teamMembers;
$salesTeam->save();
但它存储到数据库阵列并没有指数
"team_members" => "[1,34,56]"
从Laravel文档 - Array & JSON Casting “数组将自动被序列化回JSON进行存储”
我在哪里错了?
你的问题不太清楚,请补充更具体的细节?你的代码做了什么?并在哪个变量或哪行代码中获得哪个输出? – C2486
在保存之前将它编码为JSON? –