refactor scopes
This commit is contained in:
@@ -127,23 +127,25 @@ class Article extends Model implements HasMedia
|
||||
public function scopeByCategories($query, $categoriesId)
|
||||
{
|
||||
return $categoriesId ? $query->whereHas('categories', function ($query) use ($categoriesId) {
|
||||
$query->whereIn('id', $categoriesId);
|
||||
$query->whereIn('id', $categoriesId)->whereNull('deleted_at');
|
||||
}) : $query;
|
||||
}
|
||||
|
||||
public function scopeByCategoryParent($query, $categoryId)
|
||||
{
|
||||
$category = Category::find($categoryId);
|
||||
$left = $category->_lft ?? 0;
|
||||
$right = $category->_rgt ?? 0;
|
||||
|
||||
return $categoryId ? $query->whereHas('categories', function ($query) use ($category) {
|
||||
$query->where('_lft', '>=', $category->_lft)->where('_rgt', '<=', $category->_rgt);
|
||||
return $categoryId ? $query->whereHas('categories', function ($query) use ($left, $right) {
|
||||
$query->where('_lft', '>=', $left)->where('_rgt', '<=', $right)->whereNull('deleted_at');
|
||||
}) : $query;
|
||||
}
|
||||
|
||||
public function scopeByCategory($query, $categoryId)
|
||||
{
|
||||
return $categoryId ? $query->whereHas('categories', function ($query) use ($categoryId) {
|
||||
$query->where('id', $categoryId);
|
||||
$query->where('id', $categoryId)->whereNull('deleted_at');
|
||||
}) : $query;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user