Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 雄辩的电影定位_Php_Mysql_Laravel_Laravel 4_Eloquent - Fatal编程技术网

Php 雄辩的电影定位

Php 雄辩的电影定位,php,mysql,laravel,laravel-4,eloquent,Php,Mysql,Laravel,Laravel 4,Eloquent,我正在使用Laravel4和雄辩的orm建立一个电影会话数据库 现在我有以下几种型号 class Location extends \Eloquent { public $timestamps = false; public $table = 'movsys_location'; protected $fillable = array('name', 'desc'); public function sessions(){ return $thi

我正在使用Laravel4和雄辩的orm建立一个电影会话数据库

现在我有以下几种型号

class Location extends \Eloquent
{
    public $timestamps = false;
    public $table = 'movsys_location';
    protected $fillable = array('name', 'desc');

    public function sessions(){
        return $this->hasMany('Session', 'location_id');
    }
}


class Session extends \Eloquent
{
    public $timestamps = false;
    public $table = 'movsys_session';
    protected $fillable = array('time');

    public function location(){
        return $this->hasOne('Location', 'id');
    }
}
(注:这些模型已剥离为必要的代码。)

现在在我的控制器中,我有以下内容

$Sessions = Session::all();
foreach($Sessions as $Session){
    echo (isset($Session->location->name) ? $Session->location->name : 'NO LOCATION');
}
这就是我的数据库的外观:

现在,一切似乎都正常,但即使两个会话具有相同的位置,也只有第一个会话将返回该位置的名称!第二个回波将返回“无位置”


任何关于为什么的想法或帮助都将不胜感激。如果这个答案不够清楚,请告诉我。

试着用这个来代替你的答案:

class Session extends \Eloquent
{
    public $timestamps = false;
    public $table = 'movsys_session';
    protected $fillable = array('time');

    public function location(){
        return $this->belongsTo('Location');
    }
}

完美的非常感谢你。