Also arbeite ich an einem Projekt für einen Client, der eine alte mysql-Datenbank für eine neue Site verwenden möchte.Verknüpfen Sie ein Rails-Modell mit einer MySQL-Datenbanktabelle mit einem anderen Namen
Ich kann die Namen der Tabellen in der Datenbank nicht ändern, da eine andere Anwendung dieselbe Datenbank verwendet. Ich verwende Rails, um die neue Site zu codieren.
Der aktuelle Name der Tabellen in der Datenbank stimmt nicht mit den Benennungskonventionen von Rails überein. Gibt es eine Möglichkeit, ein Modell "user.rb" mit dem Tabellennamen "tbl_user" zu verknüpfen?
(Ich habe auch versucht, eine .rb-Datei mit dem Namen "tbl_user" zu erstellen, aber der Tabellenname müsste "tbl_users" lauten).
Danke für jede Hilfe, die Sie geben können!
Danke für die Antwort! Nachdem ich meine user.rb-Datei geändert habe, wie Sie gesagt haben, ging ich zum consle und versuchte User.new und bekam den folgenden Fehler (irgendwelche Ideen warum?): User.new ArgumentError: falsche Anzahl von Argumenten (gegeben 1, erwartet 0) von /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0/lib/active_record/model_schema.rb:134:in 'table_name ' von/home/ubuntu/workspace/sample -app/app/models/user.rb: 2: in ' ' von /home/ubuntu/workspace/sample-app/app/models/user.rb:1:in' ' –
sb4f1
ah, ha, ich habe die Dokumentation überprüft und der Code sollte self.table_name = 'tbl_user' lauten. Danke, dass Sie mich auf den richtigen Weg gebracht haben! – sb4f1
@ sb4f1 Wenn meine Antwort Ihnen hilft, können Sie meine Antwort als nützliche Antwort markieren. –