我正在开发一个Laravel 4
应用程序,我有一个名为幻灯片的Model
。
在此Model
中,我有以下方法:
public static function getFirstSlide($id){
$slide = DB::select("SELECT link from slides WHERE slideshow_id = ?", array($id));
$slide_url = $slide[0];
var_dump($slide_url);
echo $slide_url; die();
return $slide_url;
}
幻灯片和幻灯片之间存在one to many
关系。在方法中,我返回与幻灯片放映相关的幻灯片,并获取我想在前端显示为缩略图的第一个网址。但是每次运行以下代码时都会出现此错误:
ErrorException thrown with message "Object of class stdClass could not be converted to string (View: C:\wamp\www\xyz.tld\app\views\user\book.blade.php)"
当我做var_dump
我被告知数据是String
所以我有点困惑。在前端我试图这样做:
<img width="100%" height="100%" src="{{ url('img/slideshows/'.Slideshow::getFirstSlide($slideshow->id)) }}"/>
答案 0 :(得分:0)
因为如果你想获得链接,数组的值是stdClass的对象
$slide_url->link
。
答案 1 :(得分:0)
你可以试试这个:
$slide_url = $slide[0]->link;
这是因为$slide[0]
返回的内容如下:
object(stdClass)[314]
public 'link' => ....
stdClass
个对象。所以你应该返回字符串,如下所示:
public static function getFirstSlide($id){
$slide = DB::select("SELECT link from slides WHERE slideshow_id = ?", array($id));
// Probably check before returning it
return $slide[0]->link;
}