Ich verwende ein STI-Modell mit einer einzigen "Accounts" -Tabelle, um Informationen für Benutzer und Techniker zu halten (zB Benutzer < Account, Techniker < Account). Alles funktioniert aus funktionaler Sicht, aber die Dinge explodieren beim Laufen Unit-Tests:Ruby on Rails Einzeltabellenvererbung (STI) und Einheitentestproblem (mit PostgreSQL)
... 8) Fehler: test_the_truth (Usertest): Active :: StatementInvalid: PGError: ERROR: relation "Techniker" ist nicht vorhanden : DELETE FROM „Techniker“ ...
Wesentlichen die Standard-Framework erkennt nicht, dass die Techniker und Anwender-Tabellen (oder „Beziehungen“, wie PostgreSQL sie nennt) nicht existieren und in der Tat sollte Alias für Accounts sein.
Irgendwelche Ideen? Ich bin relativ neu in RoR und ich bin ratlos, wie ich das beheben kann, ohne STI alle zusammen zu reißen.
Können Sie sowohl den Komponententest, der den Fehler generiert, als auch die Methode, die er aufruft, wenn der Fehler auftritt, posten? –