[英]Laravel SoftDeletes conflict with UpdateOrCreate Function
[英]Laravel softdeletes on a raw query problem
我在laravel中使用SoftDeletes
,但是即使数据库中有deleted_at
列,它也会检索数据库中的deleted_at
列。 我正在使用原始查询来检索表中的数据。 有人可以告诉我该怎么做吗?
询问
$products = DB::select(
"SELECT products.id, products.price, products.product_name, products.description, products.quantity, suppliers.name
FROM products
JOIN suppliers ON products.supplier_id = suppliers.id"
);
模型
use SoftDeletes;
protected $fillable = [
'product_name', 'quantity', 'description' ,'supplier_id', 'price',
];
public function supplier()
{
return $this->hasOne('App\Supplier');
}
}
当您使用原始查询时,您绕过了Eloquent的帮助,后者针对软删除的行进行过滤。 因此,您需要添加一个附加的where子句以过滤这些行,如下所示:
SELECT products.id, products.price, products.product_name, products.description, products.quantity, suppliers.name
FROM products
JOIN suppliers ON products.supplier_id = suppliers.id
WHERE products.deleted_at is null
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.