Получите данные непосредственно из 4-х ступенчатой ​​глубокой связи в laravel - PullRequest
0 голосов
/ 22 июня 2019

У меня есть реляционная база данных, где у меня есть следующие таблицы: users, business_informations, todays_pricing, daily_margins.И моя структура таблицы:

user: id

business_informations: - id - user_id - company_name

todays_pricing: - id - user_id

daily_margins: - id - todays_pricing_id

И отношениямежду ними есть:

App \ User.php

public function business_information()
{
return $this->hasOne(BusinessInformation::class);
}

public function todays_pricing()
{
return $this->hasMany(TodaysPricing::class);
}

App \ TodaysPricing.php

public function user()
{
return $this->belongsTo(User::class);
}
public function daily_margin()
{
return $this->hasOne(DailyMargin::class);
}

App \ DailyMargin.php

public function todays_pricing()
{
return $this->belongsTo(TodaysPricing::class);
}

У меня нет проблем, я получаю все данные по мере необходимости.Но у меня есть сценарий, когда мне нужно было получить название компании от BusinessInformation.php до DailyMargin.php.Что я могу сделать следующим образом,

$dailyMarginWithCompanyName = DailyMargin::with('todays_pricing.user.business_information')->get();

Но он загружает все данные таблиц todays_pricing + user + business_information.

Я хочу, чтобы напрямую получить company_name без загрузки каких-либоиз этих промежуточных данных таблицы.Есть ли способ получить данные с помощью One Through / Polymorphic Relationships или любым другим реляционным способом.Или вы можете предложить лучший способ настроить мою таблицу для получения данных.

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