Also nach einiger Zeit und ein bisschen Kopfschmerzen. Ich war in der Lage, eine Rails
versionierte Form zu erhalten. Obwohl ich in der Lage war, es zum Laufen zu bringen, weiß ich nicht, ob es die beste Praxis ist, weil es sich ein wenig anfühlt. Ich habe eine Website mit einem Anmeldeformular auf der Zielseite. Die Zielseite ist static_pages#home
. Ich habe für meine Benutzer einen Controller _new.html.erb
erstellt, der auf meiner Zielseite enthalten ist. Hier ist das Formular, das ich habe:Handling Rails form_for in einer Ansicht, die nicht mit dem form_for Controller verbunden ist.
Es ist ein wenig unordentlich, weil ich eine Menge Styling hinzugefügt habe. Die Sache, auf die ich achten muss, ist, wie ich die form_for
präsentiere. Ich habe ihm ein Objekt @user
übergeben. Normalerweise würde diese @user
in der Users#new
Aktion gefunden werden; Allerdings ist die einzige Möglichkeit, dieses Formular ordnungsgemäß zu funktionieren, die Static_pages#home
behandeln, indem Sie @user = User.new
festlegen. Das scheint falsch zu sein, aber ich finde keinen besseren Weg, dies zu tun. Am Anfang möchte ich nur dieses Formular haben, wenn es eingereicht wird, drücken Sie die Users#create
Aktion. Ich habe versucht, form_for
zu übergeben (: Benutzer,: Benutzer, "/ Benutzer"), aber wenn ich dies versuche, versucht es, eine Static_pages#create
Aktion zu treffen.
Alles in allem dreht sich meine Frage darum, ob dies ein korrekter Umgang ist, und wenn nicht, was wäre ein geeigneterer Weg. Wieder konnte ich das zur Arbeit bringen, aber das ist, indem ich @user = User.new
jedes Mal, wenn die Static_pages#home
, meine Landingpage, besucht wird. Vielen Dank für Ihre Zeit bei der Beantwortung dieser Frage.
Ich würde @ usus = User.new beibehalten, damit das neu instanziierte Objekt referenziert werden kann. – Elvn
Ja, um das MVC-Modell zu erhalten, möchte ich meiner Meinung nach von "User.new" fern bleiben. Bis jetzt jedoch ein guter Rat, danke. – Nappstir