FastAdmin后台多表联查报错Integrity constraint violation

FastAdmin后台多表联查时报错 Integrity constraint violation: 1052 Column 'status' in where clause is ambiguous

意思是字段status在查询时是不明确的,起因是我在后台控制器的index方法中使用了多表关联查询,而且几个表中几乎都有status字段。

后台页面在表头上方的tab切换中使用的搜索字段是status,当切换tabs时会报错Integrity constraint violation: 1052 Column 'status' in where clause is ambiguous,高级搜索中也有status的查询,也会报这个错误。

解决方法很简单,打开页面对应的JS文件,找到表格的定义,在相关报错的字段前加上表名,比如status字段,使用table_name.status就没问题了,示例:

{field: 'order.status', title: __('Status'), searchList: {"0":__('Status 0'),"1":__('Status 1'),"2":__('Status 2'),"3":__('Status 3'),"4":__('Status 4')}, formatter: Table.api.formatter.status},

Leave a Comment

豫ICP备19001387号-1