我在方面有问题
// Ticket Model
<?php
class Ticket extends Eloquent {
protected $table = 'tickets';
public $timestamps = false;
protected $fillable = array('client_id','event_id');
public function events(){
return $this->belongsTo('Events'); // Not Working
}
public function client(){
return $this->belongsTo('Events'); // this working
}
}
-------------------------
//Events Model
class Events extends Eloquent {
protected $table = 'events';
public $timestamps = false;
protected $fillable = array('name','area','map1','map2','photo','date','time');
public function ticket(){
return $this->hasMany('Ticket');
}
}
在票证模型中-->当我使用时,功能(事件)不工作,但(客户端)工作
$ticket = Ticket::find(1);
return $ticket->events->name; // this not working
但是当我使用客户端时
$ticket = Ticket::find(1);
return $ticket->client->name; // This Working Fine
我怎样才能使它工作?
如果这两个函数具有相同的内容(如您所示),结果应该完全相同。CCD_ 1似乎不适用于任何其他函数或属性。
确保使用与events
和client
的find
参数完全相同的id(在本例中为1
评论后编辑
如果您已经定义:
public function events(){
return $this->belongsTo('Events'); // this working
}
你可能应该尝试这样定义它:
public function events(){
return $this->belongsTo('Events','event_id');
}
您还应该考虑以单数形式命名或建模对象(不是类Events
,而是类Event
)。