Attribut gespeichert in der Entwicklung, aber nicht in der Produktion

9

Ich habe die folgende Hilfsmethode:

%Vor%

Das Problem ist, dass beim Aufruf dieser Methode die test_sets_id übersprungen wird, wenn Daten in der Tabelle in der Entwicklungsumgebung, aber nicht in der Produktionsumgebung eingefügt werden. Die drei anderen Attribute sind gut gespeichert.

Alle Attribute sind in der Tabelle potential_followers definiert.

Ich habe auch alle Attribute in der potential_follower_params-Methode in der potential_followers_controller.rb:

%Vor%

test_sets_id ist als Integer in der Tabelle definiert. Ich habe sogar versucht, den Wert von t_id zu harcodieren:

%Vor%

Aber es würde immer noch nicht in der Produktion funktionieren.

Hier ist, was in den Modellen / potential_follower.rb:

ist %Vor%

Hier ist die Methode in test_sets_contoller.rb:

%Vor%

Irgendwelche Ideen?

    
EastsideDeveloper 04.01.2016, 11:27
quelle

2 Antworten

1

Wahrscheinlich hat die Produktionsdatenbank nicht das Feld test_sets_id , aber im Produktionsmodus erstellt rails immer noch den Datenbankdatensatz, während das Feld test_sets_id des Hashs ignoriert wird. A rake db:migrate RAILS_ENV=production sollte das Problem lösen.

    
tillmo 09.01.2016 16:28
quelle
1

Sie weichen von den Rails-Konventionen ab. Das "sounds_to" sollte im Schlangenfall und Singular sein, dh:

%Vor%

Die Datenbankspalte sollte ebenfalls singulär sein. Daher sollte die Spalte in test_set_id umbenannt werden.

Was eine belongs_to :test_set -Deklaration tun wird, ist, dass sie eine test_set_id= (und auch eine test_set= -Methode) auf PotentialFollower generiert. Das ist die Konvention für Schienen. Sobald Sie Ihr "anliegendes_to" geändert haben, sollte es jetzt erfolgreich den Wert in Entwicklung und Produktion speichern.

Siehe Ссылка

    
Thong Kuah 10.01.2016 07:56
quelle