So schreiben Sie einen Prozess, um den Inhalt starker Parameter in Rails zu extrahieren
Bearbeitungsbildschirm ↓ Bildschirm zur Inhaltsbestätigung bearbeiten ↓ Abschlussbildschirm
Aus irgendeinem Grund im Bildschirmübergang Wenn Sie den Wert des starken Parameters auf dem Bestätigungsbildschirm zum Bearbeiten von Inhalten usw. anzeigen möchten.
Was sind starke Parameter? https://qiita.com/ozackiee/items/f100fd51f4839b3fdca8
Ruby:user_edit.html.erb
<!--Name und E-Mail werden vom Eingabeformular an den Bestätigungsbildschirm gesendet-->
<!--Dies ist eine Bearbeitung für einen erstellten Benutzer, und sein ID-Wert wird separat als URL-Parameter übergeben.-->
<%= form_with(model:@user, url: confirm_user_path) do |f| %>
<div class="field">
<%= f.text_field :name, placeholder: "Geben Sie Ihren Benutzernamen ein!" %>
</div>
<div class="field">
<%= f.text_field :email, placeholder: "e-Geben Sie Ihre Mailadresse ein!" %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
UsersController.php
//Definieren Sie starke Parameter
private
def user_params
params.require(:user).permit(:name, :email)
end
UsersController.php
def edit_confirm
@user = User.find(params[:id]) #Rufen Sie Benutzerdaten mit der ID ab, die Sie aus dem URL-Parameter erhalten haben(Beispiel: Benutzer/3/edit_confirm)
@user.name = user_params[:name] #Starkes Abrufen und Zuweisen von Parameterwerten zu Variablen
@user.email = user_params[:email] #Das gleiche wie oben
end
Ruby:edit_confirm.html.erb
<h2>Bestätigung der bearbeiteten Inhalte</h2>
<p>Vollständiger Name:<%= @user.name %>Herr.</p>
<p>Mail Adresse:<%= @user.email %></p>
In Bezug auf das Erstellen eines "Bestätigungsbildschirms" in Qiita-Artikeln usw.
UsersController.erb
@user = User.new(user_params)
Und legen Sie es auf der Vorlagenseite fest
Ruby:edit_confirm.html.erb
<h2>Bestätigung der bearbeiteten Inhalte</h2>
<p>Vollständiger Name:<%= @user.name %>Herr.</p>
<p>Mail Adresse:<%= @user.email %></p>
Aber in meinem Fall Weil ich eine bestimmte Validierung für die Erstellungsaktion festgelegt habe Als ich User.new ausführte, wurde es als Erstellungsaktion erkannt und es wurde ein Validierungsfehler angezeigt. Ich frage mich, ob starke Parameter verwendet werden können, um den Eingabeinhalt auf dem Bestätigungsbildschirm anzuzeigen, während er vermieden wird. Als ich es ausprobierte, konnte ich es mit der obigen Methode abrufen und einer Variablen zuweisen.
Ich bin froh, wenn Sie es als Referenz verwenden können.