Я создаю проект колледжа, и я не могу передать данные из второй таблицы с основной таблицей/классом.Не удается передать данные второй таблицы для foreach в laravel
Когда я пытаюсь передать его и получить к нему доступ в представлении, я попытаюсь получить доступ к ошибке объекта.
это мой код ниже.
центр класса
class Gym extends Eloquent implements UserInterface, RemindableInterface {
use UserTrait, RemindableTrait;
*/
protected $table = 'gyms';
public $gym;
public function reviews()
{
return $this->hasMany('Review', 'unique_gym_id'); // represents the Review class
}
страницы контроллера соответствующий раздел, я пройти через данные из этого цикла к представлению.
foreach($gymsearchs as $gymsearch)
{
Gym::save($gymsearch);
$gyms[] = DB::table('gyms')->where('unique_gym_id', '=', $gymsearch->unique_gym_id)->get();
Review::review($gymsearch);
$reviews[] = DB::table('reviews')->where('unique_gym_id', '=', $gymsearch->unique_gym_id)->get();
}
//dd($reviews); this shows the full review object contents fine
$data = array_add($data, 'gyms', $gyms, 'reviews', $reviews);
вид
@foreach(array_slice($gyms, 0, 5) as $gym)
{{$gym->name}} // works fine and with other objects from the $gym
@endforeach
@foreach(array_slice($gyms, 0, 5) as $gym)
{{$gym->review}} // this gives me a trying to access non object error.
@endforeach
как модель тренажерного зала и обзор модель имеют unique_gym_id в качестве колонки
я думал этот класс обзора в модели тренажерного зала должен иметь Бро данные обзора таблицы с $ Гимнастический зал?
public function reviews()
{
return $this->hasMany('Review', 'place_id');
}
любые идеи, что мне не хватает? спасибо, я новичок в laravel и php
$ data = array_add ($ data, 'gyms', $ gyms, 'reviews', $ review); - лучше использовать $ data = $ data + ['gyms' => $ gyms, 'reviews' => $ reviews]; – maxpovver
круто спасибо, как им новичок, вы могли бы мне сказать, почему :) – user1529597
более четкий код работает лучше. о вашем вопросе - может быть, вы можете добавить немного более подробную информацию? .. – maxpovver