Laravel:在将列保存到数据库中之前检查其条件

时间:2019-04-08 04:33:21

标签: laravel laravel-5

我使用的脚本具有这样的插入查询:

DB::table('documents')->insert('amount' => $amount, <some other columns>);

此查询在某些控制器中反复使用(超过200个)。

现在,我想添加一个条件,如果分配给“金额”的值是0,则插入查询将被忽略。

一种简单(但很糟糕)的方法是向所有被插入的位置添加条件。 更好的方法是我定义一个函数(在库或类似的东西中)并在其中进行查询,并更改当前插入查询所在的所有控制器。但是正如我之前所说的那样很耗时。

是否有更好的方法(例如访问器/更改器或类似在执行此查询之前检查条件的方法?

1 个答案:

答案 0 :(得分:0)

如果数组或集合中有数量,请遍历该数量并过滤那些数量为0的元素。比执行质量插入。

如果可能,请尽量避免使用DB,而应使用模型的静态创建方法。