sql >> Databáze >  >> RDS >> PostgreSQL

Pohledy Postgres nejsou rozpoznány rspec

Rails ve skutečnosti nerozumí "pokročilým" databázovým konceptům, jako jsou pohledy, takže se neobjeví ve vašem schema.rb . Když rspec nastavuje svou testovací databázi, použije schema.rb k vytvoření schématu databáze, protože své pohledy nenajdete v schema.rb , nenajdete své pohledy v testovací databázi, kterou bude rspec používat, a vše se rozpadne.

Řešením je přejít z schema.rb na structure.sql . Měli byste být schopni aktualizovat config/application.rb říct:

config.active_record.schema_format = :sql

a poté proveďte rake db:structure:dump vygenerovat structure.sql soubor. Jakmile to budete mít, odstraňte schema.rb ze systému souborů a kontroly revizí přidejte structure.sql a zkuste to znovu.



  1. Export databáze přes můj java kód

  2. ERROR:Chyba syntaxe na nebo blízko OVER

  3. Použití dočasné tabulky k nahrazení klauzule WHERE IN

  4. Nastavit vlastní časové pásmo v Django/PostgreSQL (indický standardní čas)