[RUBY] Schienen Starke Parameter

Was ist ein starker Parameter?

Sind die vom Web an den Server gesendeten Parameter die beabsichtigten Daten? Es ist ein Mechanismus zum Erfassen und Registrieren nach Überprüfung. __Datei ansehen __

sample.html


<%= form_for @sample do |f| %>
 <div class="name_from">
   <%= f.text_field :name, placeholder: "Geben Sie den Benutzernamen ein" %>
 </div>
 
<div class="addles_from">
   <%= f.text_field :addles, placeholder: "Geben Sie die Adresse ein" %>
 </div>
 
<div class="mail_from">
   <%= f.text_field :mail, placeholder: "Betritt den Met" %>
 </div>

 <div class="actions">
  <%= f.submit %>
</div>
<% end %>

Regler

sample_controller.rb


def index
end

def create
  Sample.create(sample_params)
end

private

def sample_params
  params.permit(:name, :mail)
end

Bearbeitungsauftrag Die auf dem Bildschirm eingegebenen Anforderungsparameter werden in Hash-Form an die Aktion des Steuerelements übergeben. Ich werde es oft weglassen, aber dieses Mal gehe ich davon aus, dass der Prozess an die Erstellungsaktion übergeben wird. Wenn der Prozess an die Aktion __create __ übergeben wird, wird die Aktion __sample_params __ in der Aktion aufgerufen. Die Aktion __sample_params __ ruft jetzt nur die Werte ab, die von den Anforderungsparametern beabsichtigt wurden. Die Methode __params.permit __ wird verwendet. Diese __permit-Methode __ ist ziemlich wichtig, und wenn Sie diese Methode verwenden, Ruft nur die beabsichtigten Anforderungsparameter ab, erstellt einen neuen Hash-Typ und gibt einen Wert in der Erstellungsaktion zurück. Dieses Mal ist es leicht zu verstehen und das Argument der __permit-Methode __ lautet nur : name,: mail. Die Anforderungsparameter sind __ {Name: "aaa", Addles: "Tokyo", Mail: "bbb @ bbb"} __ Es wurde an den Server gesendet und der Wert des Anforderungsparameters wurde an die Erstellungsaktion des Beispielcontrollers gesendet. Es wurden drei Parameter gesendet, aber die einzigen Werte, die ich möchte, sind die Werte : name,: mail, also wurden sie gesendet. __addles: "Tokyo" wird gespielt. __ __ Auf diese Weise wird verhindert, dass unbeabsichtigte Werte übertragen werden, Daten gefälscht und illegale Daten registriert werden. Starke Parameter sind erforderlich. Grob gesagt sind starke Parameter ein solcher Mechanismus, um nur die beabsichtigten Parameter zu erfassen. Übrigens ist der Wert des von der __permit-Methode __ zurückgegebenen Parameters wie folgt. Zum Zeitpunkt der Übertragung (Anforderungsparameter __ {Name: "aaa", Addles: "Tokyo", Mail: "bbb @ bbb"} __

Rückgabewert nach Verarbeitung der __permit-Methode __ {name: "aaa", mail: "bbb@bbb"} Dadurch werden unnötige Parameter entfernt und ein neuer Hash zurückgegeben.

Recommended Posts

Schienen Starke Parameter
Über Schienen 6
[Starke Parameter]
Über erfordern beim Einstellen starker Parameter
[Schienen] Fügen Sie starke Parameter hinzu, um sie zu entwickeln
Informationen zum Rails-Routing
Über Rails Controller
[Rails] Informationen zu Migrationsdateien
[Rails] Über aktiven Hash
Informationen zur Versionsspezifikation für Schienen
[Schienen] Standardwerte festlegen
[Anfänger] Über Rails Session
[Rails] So erhalten Sie den Inhalt starker Parameter
Aktivieren Sie starke Parameter in devise
Informationen zum Benennen von Rails-Modellmethoden
[Rails] Informationen zur Struktur des scss-Ordners
[Rails] Informationen zum Rspec-Antworttest
Über Rails Scraping-Methode Mechanisieren
Über das Symbol <%%> in Rails erb
[Rails] Über die Implementierung der Like-Funktion
[Rails] Über die Hilfsmethode form_with [Basic]
Über =
[Rails 6.0] Informationen zum Batch-Speichern mehrerer Datensätze
[Ruby on Rails] Informationen zum Active Record-Rückruf