wie speichern, array in Datenbank in rails
wenn ich die params so :
params["scholarship"] = {"name"=>"test", "state_ids"=>["1", "2", "3", "4"]}
und wenn ich create object Feld "Datenbank" state_id nicht speichern Datenbank?
wie speichern Sie die Datenbank mit format :
#<Scholarship id: 1, name: "test", state_id: "["1", "2", "3", "4"]">
wie tun?
Dank vor
InformationsquelleAutor der Frage tardjo | 2014-04-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
ActiveRecord::Base.serialisieren.
Beispielsweise:
InformationsquelleAutor der Antwort Rubyist
Du kannst auch PostrgreSQL Unterstützung für array speichern. (Wenn Sie mit PG natürlich).
Die migration wird wie folgt Aussehen:
Aber vergessen Sie nicht über Validierungen.
InformationsquelleAutor der Antwort cnnr
In Ihrem Modell haben
Hier ist ein link der Dokumentation
Dass gesagt wird, es sieht aus wie Sie versuchen, pass state_ids Parameter, und speichern Sie es in state_id, ist es das, was Sie beabsichtigen zu tun?
InformationsquelleAutor der Antwort j-dexx
du hast 2 verschiedene Namen für das Attribut, so dass Sie nicht line-up.
dann nutzen Sie
serialize :state_ids
einmal habe Sie umbenannt in die Spalte.Allerdings, wenn Sie speichern eine Liste der state_ids, ich werde denke, Sie haben auch eine Tabelle Status, und so sollte Blick in mit has_and_belongs_to_many Vereins.
InformationsquelleAutor der Antwort TomDunning