Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.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 Laravel ORM一对多阵列_Php_Laravel_Laravel 4_Orm - Fatal编程技术网

Php Laravel ORM一对多阵列

Php Laravel ORM一对多阵列,php,laravel,laravel-4,orm,Php,Laravel,Laravel 4,Orm,在Laravel4.2中,我有这个模型 // models ticket.php class Ticket extends Eloquent { public function feedback() { return $this->hasMany('Feedback'); } } // models/feedback.php class Feedback extends Eloquent { public function ticket

在Laravel4.2中,我有这个模型

// models ticket.php
class Ticket extends Eloquent {

    public function feedback()
    {
        return $this->hasMany('Feedback');
    }
}

// models/feedback.php
class Feedback extends Eloquent {

    public function ticket()
    {
        return $this->belongsTo('Ticket');
    }
}
当我这样做时:

$tickets = Ticket::with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->first();
它返回一个包含所有票证的数组,并按预期在一个数组中返回反馈

接下来,我想获得一张包含所有相关反馈的门票:

$tickets = Ticket::with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->first();
这还会返回所有票证及其反馈

我试过:

$tickets = Ticket::with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->get();
$tickets = Ticket::find($id)->with('feedback')->first();
这似乎有效,但忽略$id,并始终显示表中的第一行/票据$id不是空的,我已检查。

find()
已运行查询。然后
with()->get()
运行另一个id上没有where子句的程序。改为:

$ticket = Ticket::with('feedback')->find($id);

如果生活总是这么简单!我的想法在哪里复杂。。。我在拉雷维尔还有很多东西要学;-)谢谢不客气。别忘了接受答案;)