php - 使用 Laravel 将数据作为 json 字符串存储在 nosql 中
问题描述
对于给定的模型,我有Post model
一个$fillable
属性,我在其中定义了一个列表,如下所示:
protected $fillable = [
'title',
'slug',
'body',
'type',
'status',
'inputs',
];
由于某些原因,在用户界面中,有一些自定义字段我想存储string
在“输入”属性中。这是我的控制器:
public function store(StorePost $request){
$data=$request->validate();
$p=Post::create($data);
return response()->json(PostResource::collection($p));
}
但问题是,对于属性input
,希望它的值是 a json string
,因为有一些自定义字段和数据也将来自,form
并且它们的所有名称都将以input_
like 为前缀,例如:input_body,input_slug,input_title
。但我没有定义模型,所以我想做的是在控制器中从它们创建一个配对键值,结构如下:
[
custom_field_name1=>value1,
custom_field_name2=>value2
]
但是那里的名称将取决于创建它们的用户,我不知道如何拥有控制器如何自动识别它们以创建上面的数组。然后将它们转换为 ajson string
以将它们存储在input
属性中。
解决方案
推荐阅读
- sql - 生成包含下一行值的日期系列
- r - R基本问题:避免多次使用数据框名称进行添加
- api - 为用户生成访问密钥的推荐方法是什么?
- python - 如何从 selenium webdriver 中的 class="form-row" id="view" 获取值?
- python - Django 找不到模块“iexfinance”,PyCharm 解释器/IDE
- python - 当另一个元素收到点击动作时如何点击复选框?
- python - Python:创建多个唯一密码
- javascript - 当焦点更改为 React Select 时,React Slate 中的文本选择不再被标记
- split - str-split 函数有什么作用?
- fortran - 在 SCALAPACK 中找到分布式向量范数的有效方法