我已将Rails应用程序从Postgres迁移到Mysql,并且出现此错误
An ActiveRecord::StatementInvalid occurred in bans#supporters:
Mysql2::Error: Unknown column 'follows.followable_id' in 'where clause': SELECT `users`.* FROM `users` WHERE (follows.followable_id=37 AND follows.followable_type='Ban')
app/controllers/bans_controller.rb:120:in `supporters'
当我在mysql中执行此操作时
SELECT `users`.* FROM `users` WHERE ('follows.followable_id'=37 AND 'follows.followable_type'='Ban'
这是工作
因此,如何在rails中的follows.followable_id和follows.followable_type周围添加引号?
谢谢,
吉尔斯
谢谢费内克
实际上在bans_controller中
@users = User.following(@ban)
当我放
@users = User.joins(:follows).following(@ban)
其作品
最佳答案
它与引号无关。您只是没有从Follows迁移followable_id列