我正在做的网页与画廊,如果我点击其中之一,它会将我重定向到单一画廊页面,并应该显示该画廊的照片。
当我进入实际画廊的页面时,画廊对象中没有任何内容。
当我做Gallery::with('photos')->get()的时候。这将给我每个画廊与它的照片。我只想从实际画廊的照片。
谢谢。
//Photo model
class Photo extends Model
{
public function gallery()
{
return $this->belongsTo('App\Gallery');
}
}
//Gallery model
class Gallery extends Model
{
public function getRouteKeyName()
{
return 'slug';
}
/**
* Get the photos of this gallery.
*/
public function photos()
{
return $this->hasMany('App\Photo');
}
}
//show metod in GalleryController
public function show(Gallery $gallery)
{
$gallery->load('photos');
return compact('gallery');
}发布于 2019-07-28 23:18:54
库中没有任何内容,因为您没有返回视图。
这一行:
return compact('gallery');需要一个视图,例如:
return view("somethingFolder.somethingView", compact('gallery'));或者,如果你只是展示一个类似于ajax拉取的模型,你可以使用类似这样的东西:
$view = view('somefolder.someview', compact('gallery'));
$sections = $view->renderSections(); // returns an associative array of 'content', 'pageHeading' etc
return $sections['modalContent']; // this will only return whats in the content section然后在您的视图中,$gallery->photos将为您提供该图库的照片集合。
https://stackoverflow.com/questions/57242182
复制相似问题