Y a-t-il un moment où vous souhaitez créer dans le flux de l'écran de validation → écran de confirmation → fin de validation? Je viens d'ajouter un écran de confirmation, mais il est resté bloqué car les données ont été enregistrées et traitées un peu différemment. .. J'écrirai l'expérience à ce moment-là sous forme de mémorandum!
-L'image est affichée sur l'écran de confirmation, mais l'image ne peut pas être téléchargée sur l'écran des détails de la publication.
-Lorsque vous déboguez avec binding.pry
etc. et vérifiez le comportement de l'action de confirmation de publication (action de confirmation), seule l'image est nulle.
-Même si je le vérifie en utilisant SQL, seules les données d'image ne sont pas enregistrées.
Apparemment, il n'y a pas de données d'image dans les informations renvoyées par l'écran de confirmation lors du passage à l'écran de confirmation.
Il semble qu'il soit nécessaire de sauvegarder les données d'image séparément avant d'afficher l'écran de confirmation, puis de les retirer et de les utiliser.
-Ajouter la description de «caché» dans l'écran de confirmation
-Utilisez le paramètre : image_cache
.
(N'oubliez pas de passer : image_cache
dans le contrôleur ...)
hidden = ** Utilisé lors de l'envoi de données masquées au serveur. La valeur spécifiée dans l'attribut value est envoyée au serveur. ** **
image_cache = ** Un paramètre qui gère les données d'image elles-mêmes. (Ce paramètre est utilisé lorsque l'écran de confirmation est monté.) **
new.html.erb
<div class="thumbnail">
<%= f.file_field :image %>
<%= f.hidden_field :image_cache %>← Addendum
</div>
<%= f.submit "Vers l'écran de confirmation" %>
confirm.html.erb
<%= form_with model: @tournament, url: tournaments_path, html: { method: :post }, local: true do |f| %>
<%= f.hidden_field :start_time %>
<%= f.hidden_field :image %>
<%= f.hidden_field :image_cache %>← Addendum
<%= f.submit "créer"%>
<% end %>
tournaments_controller.rb
def tournament_params
params.require(:tournament).permit(:start_time, :image, :image_cache)
end
Vous pouvez maintenant recevoir et afficher les données d'image! ..doit.
La description lors du passage à l'écran de confirmation change d'un endroit à l'autre, elle reste donc bloquée de manière inattendue. Je veux vivre plus et grandir! !!
J'espère que cela aide ceux qui sont dans la même situation. LGTM: thumbsup: Je vous serais reconnaissant si vous pouviez le résoudre ou le trouver utile. Lol