更新后的Laravel(5.3 => 5.4)产生错误的sql

问题描述:

我使用Laravel 5.3进行稳定的项目。更新后的Laravel(5.3 => 5.4)产生错误的sql

今天决定将Laravel升级到5.4,然后升级到5.5。我正在关注官方升级指南。

5.4升级后,一切似乎工作..除了一件事。我的多个belongsToMany关系之一产生了现在错误的sql。

我有模型App\Situation有关系:

public function feedbacks() 
    { 
    return $this->belongsToMany('App\Feedback'); 
    } 

而且App\Feedback模型:

public function situations() 
    { 
    return $this->belongsToMany('App\Situation'); 
    } 

当然,我有表feedbackssituationsfeedback_situation。 升级之前这段代码是罚款:

dd($situation->feedbacks); 

但现在它产生的异常:

基表或视图未找到:1146表 'example.feedback' 不存在(SQL:选择feedback *, feedback_situationsituation_idpivot_situation_idfeedback_situationfeedback_idpivot_feedback_idfeedback内加入feedback_situationfeedbackid = feedback_situation。其中 feedback_situationsituation_id = 383)

这很奇怪,因为其他关系有效,而这个关系在5.3上工作。

+0

其寻找一个表反馈不反馈计划** S ** – madalinivascu

+0

这就是为什么我问。它应该搜索反馈表。它正在搜索L5.3的反馈表! – frutality

+1

添加受保护的'$ table ='feedbacks';'进入您的反馈模型 – madalinivascu

附加保护$table = 'feedbacks';到您的反馈模型,该模型使用的名称更改为feedbacks