Railsは、ビューなどの「高度な」データベースの概念を実際には理解していないため、schema.rb
には表示されません。 。 rspecがテストデータベースを設定するとき、schema.rb
を使用します。 schema.rb
にビューがないため、データベーススキーマを作成します。 、rspecが使用するビューがテストデータベースに見つからず、すべてがバラバラになります。
解決策は、schema.rb
から切り替えることです。 structure.sql
へ 。 config/application.rb
を更新できるはずです 言う:
config.active_record.schema_format = :sql
次に、rake db:structure:dump
を実行します structure.sql
を生成します ファイル。それができたら、schema.rb
を削除します ファイルシステムとリビジョン管理から、structure.sql
を追加します 、もう一度やり直してください。