【发布时间】:2022-11-07 21:39:44
【问题描述】:
我正在尝试更新库存字段或在模型不存在时创建它
雄辩:
\App\Models\MarketingStock::updateOrCreate(
['marketing_id' => $attr['marketing_id']],
['product_id' => $attr['product_id']],
)->increment('qty',$attr['qty']);
该模型 :
class MarketingStock extends Model
{
use HasFactory;
protected $fillable = ['marketing_id','product_id','stock'];
}
结果 :
SQLSTATE[HY000]: General error: 1364 Field 'stock' doesn't have a default value (SQL: insert into `marketing_stocks` (`marketing_id`, `product_id`, `updated_at`, `created_at`) values (2, 1, 2022-11-07 20:21:11, 2022-11-07 20:21:11))
我从这些参考资料中进行了研究: Solution 1 Solution 2
但没有什么对我有用 如何解决这个问题?
【问题讨论】:
-
最简单的方法可能是修改表,使
stock的默认值为 0。