Я хочу вернуть необходимые столбцы из моей базы данных с помощью красноречивой модели с отношением.
public function Page()
{
return $this->hasMany('App\Page', 'subcategory_id');
}
И вот как я возвращаю данные в свой контроллер
$subcategoryContent = SubCategory::where('slug',$subcategory)->with('Page')->get();
Все, что я хочу, - это вернуть имя страницы и заголовок в соответствии с идентификатором подкатегории по отношению. Отношения работают нормально, но мне нужны детали подкатегории и имена страниц, принадлежащих этой подкатегории. Спасибо!!!






какой результат вы получите от этого? и какой результат вы хотите от этого ??
обычно я просто получаю подкатегорию в контроллере ..
$subCategorys = SubCategory::where('slug',$subcategory)->get();
тогда я пишу это ввиду
редактировать в представлении на основе вашего ответа ..
@foreach($subCategorys as $sub)
{{ $sub->name}}
@foreach($sub->Page as $page)
{{$page->title}}
{{$page->id}}
@endforeach
@endforeach
Я думаю о двух решениях, но еще не пробовал ... сначала используйте pluck, затем используйте db :: raw, а затем выберите все, что вам нужно ..
Основываясь на вашем комментарии, вам нужно добавить оператор выбора:
В вашем построителе запросов ->with() вам нужно использовать оператор select с ::
$subcategoryContent = SubCategory::where('slug',$subcategory)->with('Page:id,title')->get();
Попробуй это:
$subcategoryContent = SubCategory::where('slug',$subcategory)->first()->Page()->pluck('title','id);
прямо сейчас я получаю подкатегорию и страницы, принадлежащие этой подкатегории. но он возвращает все данные таблицы Страницы, которая принадлежит подкатегория, и мне нужны только заголовок и идентификатор.