Php 打开模型属性不';t工作-拉威尔4
我今天有个奇怪的问题。 我有一个关系非常复杂的数据库。 在我的模型上,我得到了以下函数:Php 打开模型属性不';t工作-拉威尔4,php,laravel-4,Php,Laravel 4,我今天有个奇怪的问题。 我有一个关系非常复杂的数据库。 在我的模型上,我得到了以下函数: public function resource(){ dd($this->getAttributes()); switch($this->content_type){ case Content::TYPE_TASKLIST: return $this->belongsTo('Tasklist', 'content_id');
public function resource(){
dd($this->getAttributes());
switch($this->content_type){
case Content::TYPE_TASKLIST:
return $this->belongsTo('Tasklist', 'content_id');
case Content::TYPE_FEEDBACK:
return $this->belongsTo('Feedback', 'content_id');
case Content::TYPE_SURVEY:
return $this->belongsTo('Survey', 'content_id');
case Content::TYPE_MEMO:
return $this->belongsTo('Memo', 'content_id');
case Content::TYPE_GEAR:
return $this->belongsTo('Gear', 'content_id');
}
return $this->belongsTo('Resource', 'content_id');
}
这个函数必须改变关系,并给我一个好的,以获得正确的信息。
我检查了上千次列名称,但无法使用开关
$this->content\u类型始终为空,因此不会更改关系。
我试了很多。正如您所看到的,我添加了model属性,但它只返回一个空数组
我不明白为什么这个函数不起作用。我得到的所有其他不动产,直到这些差异资源得到解决。我得到了关于资源id和内容类型的正确信息,但根本不起作用
有人知道为什么吗
谢谢。我认为您尝试实现多态关系和Laravel有一种优雅的方式来实现这一点 有关详细信息,请参阅 另外,确保您有一个加载了数据的模型实例,以便能够填充属性。否则,它将如您所述为空