[RUBY] [Rails] fields_for wird nicht angezeigt

Als ich dieses Mal versuchte, "file_field" in "fields_for" zu verwenden, hatte ich Probleme, weil es sich nicht in der Ansicht widerspiegelte. Deshalb werde ich beschreiben, wie man es als Memorandum löst. Ich hoffe, es wird denen helfen, die die gleichen Probleme haben.

Das Modell, das diesmal angezeigt wird

・ (Eltern-) Postmodell ・ (Untergeordnetes) Bildmodell

Wir verknüpfen mit dem Postmodell und dem Bildmodell accept_nested_attributes_for.

Annahme

Erstellen Sie SNS wie Twitter und FB. Ich bin dabei, ein Post-Formular mit "form_for" zu erstellen.

Satz → Postmodell Foto → Bildmodell Ich wollte es speichern und habe eine Ansicht wie diese erstellt:

Falscher Code

(Zum besseren Verständnis werden nur die relevanten Teile extrahiert.)

haml


.form__contents
  = form_for @post, id: "new_post" do |f|
    .title
      = f.text_field :title
    .text
      = f.text_area :text
    .image
      = f.fields_for :images do |i|
        = i.file_field :image
    = f.submit "Post!"

Okay, die Codierung ist abgeschlossen! !! Gehen wir zur Ansicht! !! …Das,,"= f.fields_for :images do |i|Folgendes wird nicht wiedergegeben ... Außerdem weiß ich nicht, was los ist, weil es keine Fehler gibt ... Ich habe getan, wie ich überprüft habe ...

Code, der funktioniert hat

haml


.form__contents
  = form_for @post, id: "new_post" do |f|
    .title
      = f.text_field :title
    .text
      = f.text_area :text
    .image
      = f.fields_for :images, @post.images.build do |i|
        = i.file_field :image
    = f.submit "Post!"

Zusammenfassung

Ich dachte nur, wenn Sie das Modell, das Sie speichern möchten, in "fields_for" schreiben, wird es in der unter "file_field" beschriebenen Spalte gespeichert.

Es schien, dass ich ** eine untergeordnete Modellinstanz ** an das zweite Argument von "fields_for" übergeben musste.

Ich verstehe ... Es ist natürlich, weil ich auch "form_for" eine Instanz gebe. (Ich habe zuerst gelernt, dass Sie überhaupt eine images.build-Instanz erstellen können!)

Mehr und mehr.

Referenzierte Site

Recommended Posts

[Rails] fields_for wird nicht angezeigt
Rails Die AWS-Bereitstellung wird nicht berücksichtigt
Daten sind nicht in Rails registriert.
MySQL läuft nicht stabil ... Die Rails-App läuft nicht.
Das Bild wird in der Produktionsumgebung nicht angezeigt
[Schienen] Über den Fehler, dass das Bild nicht in der Produktionsumgebung angezeigt wird
Die Gerätefehlermeldung wird nicht richtig angezeigt.
Schienen neuer App-Name nicht erstellt
Wenn das Projekt nicht in Eclipse angezeigt wird
[Fehler] Die App wird in der Produktionsumgebung nicht angezeigt
[Ruby on Rails] Wenn der Befehl heroku ausgeführt wird, wird der Befehl bash: heroku: nicht gefunden angezeigt. [Rails Tutorial]
DateFormat ist nicht threadsicher
"tx" ist kein gebundener Fehler
Was ist Rails Gem Devise?
Schienenfehler Bibliothek nicht geladen
[Vue Rails] "Hallo Vue!" Wird mit Vue + Rails angezeigt
Was tun, wenn FacesMessage festgelegt, aber nicht angezeigt wird?
Schienen sind schwierig und schmerzhaft!
Schienen sind schwierig und schmerzhaft! Ⅱ
[Rails 6] Einführung von jQuery ・ Die Lösung des nicht erfassten Referenzfehlers $ ist nicht definiert
[Schienen] Wenn die Layoutänderung des Geräts nicht berücksichtigt wird
fields_for wird so verwendet
Der endgültige Überschreibungsfehler von [Java] wird zur Kompilierungszeit nicht angezeigt
Was ist Rails Active Record?
So lösen Sie das Problem, dass das Website-Image nach der Bereitstellung auf Heroku in Rails 5 nicht angezeigt wird
Informationen zum Problem, dass das Image nach der AWS-Bereitstellung nicht angezeigt wird
[Rails] Was tun, wenn keine Daten in der Datenbank registriert sind?
[Schienen] Änderungen der von devise erstellten Ansichtsseite werden nicht berücksichtigt
Nicht erfasster Referenzfehler: Die Geschichte von Vue ist nicht definiert
Das? WebView (schnell) funktioniert nicht.
Java Calendar ist kein Singleton.
Warum Java Vector nicht verwendet wird
[Für Anfänger ein Muss] rails_12factor ist nicht erforderlich, um die Rails-App in Heroku zu veröffentlichen
[Schienen] Was tun, wenn das Refile-Bild beim Schreiben der Verarbeitung zum Zeitpunkt des Routing-Fehlers nicht angezeigt wird?