Mysql2::Error: テーブル名が正しくありません ’ - AppMap Gem を使用する場合
概要
最近 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 を削除すると、アプリケーション内のすべてが以前と同様に意図したとおりに動作します。
ここからどこに行けばよいのかよくわからないので、ご意見をいただければ幸いです。
バージョン:
解決策
AppMap github の問題ページでこの問題を報告していただきありがとうございます。この問題は、appmap-ruby gem の v0.95.0 で解決されています。他にサポートが必要な場合は、別の問題を開くか、コミュニティ スラックに参加してください。