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

时间:2017-10-10 09:58:07

标签: php laravel laravel-5 orm laravel-5.4

我在Laravel 5.3上有稳定的项目。

今天决定将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_id,   来自feedback_situation的{​​{1}}。feedback_id   pivot_feedback_id上的feedback内部加入feedback_situationfeedback =   idfeedback_situation其中   feedback_idfeedback_situation = 383)

这很奇怪,因为其他关系有效,而且这个关系适用于5.3。

1 个答案:

答案 0 :(得分:1)

将受保护的$table = 'feedbacks';添加到您的反馈模型中,以将模型使用的名称更改为feedbacks