我最近发现了关于AppMap实用程序,我正试图通过IntelliJ将其合并到我的Rails应用程序中。然而,在安装gem并配置它之后,我发出的任何请求都会抛出以下异常:
ActiveRecord::StatementInvalid in UsersController#index
Mysql2::Error: Incorrect table name ''
当使用浏览器时,它会对每个页面、模型、请求等执行此操作。从我的堆栈跟踪来看,问题似乎是在我的Ability.rb
文件中检查角色时出现的(我使用Devise
、CanCanCan
和Rolify
进行身份验证)。
如果我尝试在rails控制台中执行user.roles
,它会产生以下内容:
irb(main):007:0> u.roles
Role Load (0.5ms) SELECT `roles`.* FROM `roles` INNER JOIN `` ON `roles`.`id` = ``.`role_id` WHERE ``.`user_id` = 1
(Object doesn't support #inspect)
如果我删除AppMap
gem,那么我的应用程序中的一切都像以前一样工作。
我真的不知道从这里去哪里,所以任何输入将非常感谢!
版本:
- IntelliJ IDEA: 2022.1.4 (Ultimate)
- AppMap Plugin: 0.21.0
- AppMap Gem: 0.94.1
- Rails: 6.1.4.7
- Ruby: 3.0.1
- MySql2: 0.5.4
- CanCaCan: 3.2.2
- 设计:4.8.1
- Rolify: 6.0.0
感谢您在AppMap github问题页面中报告此问题。这个问题在appmap-ruby gem的v0.95.0
中解决了。如果您需要任何其他帮助,请打开另一个问题或加入我们的社区slack