Как получить записи об отношении к принадлежаМани с сводной таблицей в Laravel - PullRequest
0 голосов
/ 12 марта 2019

Моя таблица предложений имеет следующий метод

/**
 * Get the region for this offer.
 */
public function region()
{
    return $this->belongsTo('App\Models\Region');
}
 /**
 * Get the categories for this offer.
 */
public function categories()
{
    return $this->belongsToMany('App\Models\OfferCategory');
}

Моя категория предложений имеет следующий код

/**
 * Get the parentCategory.
 */
public function parentCategory()
{
    return $this->belongsTo('App\Models\OfferCategory');
}

/**
 * Get the offers for this category.
 */
public function offers()
{
    return $this->belongsToMany('App\Models\Offer');
}

Как получить записи для предложений с идентификатором категории и региона?

Ответы [ 3 ]

0 голосов
/ 12 марта 2019

Попробуйте все это предложение, если существует регион (id) и категория (id).

$cat_id     = 1;
$region_id  = 1;
$offers = OfferModel::whereHas("region", function($query) use ($region_id){
    return $query->where("id", $region_id);
})
->whereHas("categories", function($query) use ($cat_id){
    return $query->where("id", $cat_id);
})
->get();
0 голосов
/ 05 апреля 2019

Я решил проблему с помощью следующего кода

$offer = Offer::where($where)
            ->whereHas('categories', function($q) use($offerCategory) {
                $q->where('name', '=', $offerCategory->name);
            });
0 голосов
/ 12 марта 2019

Попробуйте этот код:

$offers = OfferModel::with('region')->with('categories')->get();

Это синтаксис получения данных отношений. Я надеюсь, что это будет полезно. Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...