Laravel Model::create or Model->save()

2022-08-30 22:23:47

我想知道我应该使用什么方法在数据库中存储数据;

第一种方法

$product = Product::create($request->all());

在我的产品模型中,我有$filable阵列用于大规模评估

第二种方法

    $product = new Product();
    $product->title = $request->title;
    $product->category = $request->category;
    $product->save();

这两个“更好的解决方案”中的任何一个吗?我通常应该使用什么?

感谢您的建议


答案 1

个人喜好。

Model::create()依赖于批量分配,这允许您快速将数据转储到模型中,它与验证很好地配合工作,而不必手动设置每个模型属性。我最近开始使用这种方法而不是后者,可以说它更好,更快。

不要忘记你还有一系列其他质量分配函数,和(可能更多)。create()update()fill()


答案 2

推荐