Ich bin sicher, dass dies eine völlig offensichtliche Anfängerfrage ist, aber der Versuch, Antworten auf Anfänger Ruby Fragen auf Google zu finden, erweist sich als eine Übung in der Sinnlosigkeit.Ruby Custom Class zu Modell
Wie dem auch sei, nehme ich an eine Datenbanktabelle haben, die wie folgt aussieht:
MyMessage
==================
int :id
string :from
string :to
string :messagetext
Nun, wenn ich eine URL aussetzen müssen, die in Form von in Abfragezeichen params nimmt:
Was ist der beste Weg, um die Querystring-Parameter zu meinem Modell zuordnen?
Gerade jetzt, ich mache es nur mit brutalen Gewalt in der Steuerung:
@sender = params[:sender]
@receiver = params[:receiver]
@message = params[:message]
@mymessage = MyMessage.new
@mymessage.from = @sender
@mymessage.to = @receiver
@mymessage.messagetext = @message
@mymessage.save
Meine Vermutung ist, dass ich in der Lage sein sollte, eine Klasse repräsentiert diese Art von Abfragezeichen Anfrage, dh
zu erstellenclass Request
attr_accessor :from
attr_accessor :to
attr_accessor :message
end
dann einige RoR Magie verwenden, um das Request
Objekt aus den params
und dann mehr Magie zu schaffen, ein Verfahren zu schaffen, bildet das Request
Objekt das MyMessage
Objekt.
Irgendwelche Vorschläge? Macht das überhaupt Sinn?
Das in so ziemlich jedem des 'my-first-Rails-app' Tutorials abgedeckt ist. Hast du einen gemacht? – fig
Ja, ich habe ungefähr vier davon gemacht. Sind Sie sicher, dass Sie die Frage verstehen? Wenn Sie einen Link veröffentlichen können, der ein Tutorial zeigt, bei dem ich dies verpasst habe, lösche ich die Frage gerne. Ich denke, ich kann es über update_attributes tun, aber die Frage ist aus einem Grund "Neuling" markiert. – jerhinesmith
Ja, ich habe die Beispiel-Apps erstellt. Keiner von ihnen scheint das Erstellen von benutzerdefinierten Klassen und deren Zuordnung zu einem generischen Modell zu behandeln. Ich versuche auch nicht, ein Idiot zu sein, aber verstehst du, dass das Modell/die DB andere Feldnamen/Eigenschaften als das hat, was über die Querystring weitergegeben wird? – jerhinesmith