未找到列:1054 laravel 4 中的未知问题

Column not found: 1054 Unknown issue in laravel 4

我在 laravel 4

中显示一对多关系时遇到这个问题
 SQLSTATE[42S22]: Column not found: 1054 Unknown column 
'subject_start.teacher_subject_id' in 'where clause'
(SQL: select * from `subject_start` where `subject_start`.`teacher_subject_id` = 1)

但我查看了迁移文件和数据库 table,我看到了这个名为 teach_sub_id 的专栏。为什么 laravel 抛出这个 QueryException。

有什么建议吗?

我非常有信心 teacher_subject_id 实际上不存在于您的 table subject_start 中。如果您打开 mysql 控制台并输入

,您可以仔细检查它
desc subject_start;

这将向您显示此 table 中存在的所有列。

如果您打算使用不同的列,那么您可以像这样更改您的 Eloquent 关系

$this->hasMany("TeacherSubject", "custom_key_column")

直接在数据库上复制查询和运行。你会看到你的查询是否正确。