Erklärung von Ruby on Rails für Anfänger ④ ~ Informationen zu Benennungsregeln und zur Verwendung von form_Tag ~

Einführung

Diese Zeit ist eine Fortsetzung des vorherigen Artikels.

Bitte lesen Sie den vorherigen Artikel, wenn Sie möchten.

Erklärung von Ruby on Rails für Anfänger ① Erklärung von Ruby on Rails für Anfänger ② ~ Erstellen von Links ~ Erklärung von Ruby on Rails für Anfänger ③ ~ Erstellen einer Datenbank ~

Informationen zu Namenskonventionen für Rails

Bisher haben wir Controller und Modelle erstellt.

Sie haben Namenskonventionen. Lass uns lernen.

Modellnamenskonvention

Ein Modell ist eine Konstruktionszeichnung zum Erstellen einer Datenbank.

Da es nur eine Konstruktionszeichnung gibt, erstellen Sie den Modellklassennamen in "Einzelform".

Die Tabelle wird automatisch als "Plural" dargestellt, da sie mehrere Daten für dieses Modell enthält.

Im vorherigen Artikel habe ich ein Modell mit dem Namen "Benutzer" erstellt.

Dadurch wird eine Tabelle mit dem Namen "Benutzer" erstellt.

Benennungsregeln für Ansichten Der Ordner "Ansicht" enthält mehrere Dateien, daher handelt es sich um einen "Plural". Regeln für die Benennung von Controllern Controller haben mehrere Aktionen. Erstellen Sie sie daher im Plural. Registrieren von Daten in der Datenbank Im vorherigen Artikel haben wir die Rails-Konsole verwendet, um Daten in der Datenbank zu registrieren.

Dieses Mal registrieren wir die Daten in der Datenbank, indem wir den Benutzer den Browser bedienen lassen.

Überprüfen Sie vorher die Datenbank einmal.

Geben Sie den folgenden Befehl in das Terminal ein.

rails dbconsole

Sie können die Anzeige von Spaltennamen mit dem folgenden Code aktivieren.

sqlite> .headers on

In diesem Zustand können Sie den Inhalt überprüfen, indem Sie die folgende SQL-Anweisung schreiben.

sqlite> select * from users;
id|name|password|created_at|updated_at
1|poco|maru|2020-05-20 10:50:13.177731|2020-05-20 10:50:13.177731

Sie können sehen, dass die Benutzertabelle jetzt die Spalten name und pasword enthält.

Erstellen wir nun ein Eingabeformular und speichern die vom Benutzer gesendeten Daten in der Datenbank.

Schreiben Sie den folgenden Code in die Datei /users/new.html.erb.

new.html.erb


<%= form_tag("/users/create") do %>
  <p>Nutzername</p>
  <input name="name">
  <p>password</p>
  <input name="password">
  <input type="submit" value="Senden">
<% end %>

form_tag wird verwendet, um einen beliebigen Wert aus der Ansichtsdatei an den Controller zu senden oder zu löschen. Dies ist die sogenannte POST-Anfrage. Den Unterschied zwischen Get Request und Post Request finden Sie im Artikel hier. Wenn ein Benutzer eine Schaltfläche mit "type =" submit "" sendet, wird eine Post-Anfrage ausgeführt, die "users / create" entspricht.

Dieses Mal ist das Routing wie folgt.

routes.rb


post "users/create" => "users#create"

Das heißt, die obigen Daten werden an die Erstellungsaktion des Benutzercontrollers gesendet. Schreiben Sie in der Aktion "Erstellen" den folgenden Code.

users_controller.rb


def create
  user = User.new(name: params[:name], password: params[:password])
  user.save
end

Dieser Code verwendet die Benutzerklasse des Benutzermodells, um Daten in der Benutzertabelle der Datenbank zu speichern.

Wenn in den von form_tag gesendeten Daten ein Tag mit dem Namensattribut angegeben ist, kann der Wert im Controller als "params [name attribute]" behandelt werden.

In diesem Fall wird der Wert in "" in "params [: name]" und der Wert in "" in params [: password] gespeichert.

Ein Modell wird unter Verwendung von "User.new (Name: Parameter [: Name], Passwort: Parameter [: Passwort])" für die gesendeten Daten erstellt und in der Datenbank gespeichert.

Vom Benutzer ist es wie folgt.

image.png

Lassen Sie uns in diesem Zustand "Senden" drücken. In der Erstellungsaktion des Benutzer-Controllers wird dann die Zeichenfolge, die dies ist, in params [: name] und der Zeichenfolgentest in params [: password] gespeichert.

Ich konnte die Daten wie folgt speichern.

3|this|test|2020-05-21 05:30:36.718523|2020-05-21 05:30:36.718523

Wenn Sie es jedoch so lassen, wie es ist, gibt es keine besondere Änderung, selbst wenn Sie auf Senden klicken. Es ist langweilig, also leiten wir zu einer anderen Datei um.

Weiterleiten, wenn Sie Senden drücken

Wenn Sie auf Senden klicken, wird die Erstellungsaktion des Benutzercontrollers ausgeführt. Wenn Sie also den Umleitungscode in diese Erstellungsaktion schreiben, wird er in eine andere Datei umgeleitet.

Fügen wir den Code wie folgt zum Controller des Benutzers hinzu.

users_controller.rb


def create
  user = User.new(name: params[:name], password: params[:password])
  user.save
  redirect_to("/users/index")
end

Wenn Sie es so schreiben, werden Sie zu der Datei weitergeleitet, die / users / index entspricht, wenn Sie auf Senden klicken.

Vergessen Sie übrigens beim Schreiben einer Weiterleitung nicht, / am Anfang des Pfades zu setzen.

Am Ende

Das ist alles für diesen Artikel.

Danke für deine harte Arbeit.

Bitte lesen Sie die folgenden Artikel, wenn Sie möchten.

Erklärung von Ruby on Rails für Anfänger ⑤ ~ Bearbeiten und Löschen der Datenbank ~

Erklärung von Ruby on Rails für Anfänger ⑥ ~ Erstellung der Validierung ~

Erklärung von Ruby on Rails für Anfänger ⑦ ~ Implementierung von Flash ~

Recommended Posts

Erklärung von Ruby on Rails für Anfänger ④ ~ Informationen zu Benennungsregeln und zur Verwendung von form_Tag ~
Erklärung von Ruby auf Schienen für Anfänger ①
Erklärung von Ruby auf Schienen für Anfänger ⑥ ~ Erstellung der Validierung ~
Erklärung von Ruby on Rails für Anfänger ② ~ Links erstellen ~
Erklärung von Ruby on Rails für Anfänger ⑦ ~ Flash-Implementierung ~
Verwendung von Ruby on Rails
Erklärung von Ruby on Rails für Anfänger ③ ~ Erstellen einer Datenbank ~
(Für Anfänger) [Rails] Zeitsparende Technik! So installieren und verwenden Sie slim
[Für Rails-Anfänger] Zusammenfassung der Verwendung von RSpec (Überblick)
(Ruby on Rails6) So erstellen Sie ein Modell und eine Tabelle
[Verfahren 1 für Anfänger] Ruby on Rails: Aufbau einer Entwicklungsumgebung
[R Spec on Rails] So schreiben Sie Testcode für Anfänger von Anfängern
[Ruby on Rails] So vermeiden Sie das Erstellen unnötiger Routen für die Entwicklung
So lösen Sie die lokale Umgebungskonstruktion von Ruby on Rails (MAC)!
[Rails] Artikel für Anfänger, um den Fluss von form_with zu organisieren und zu verstehen
[Ruby] Verwendung der gsub-Methode und der sub-Methode
Ruby on Rails ~ Grundlagen von MVC und Router ~
Verwendung von JQuery in Rails 6 js.erb
[Für Super-Anfänger] Verwendung des Autofokus: true
[Ruby on Rails] So japanisieren Sie die Fehlermeldung des Formularobjekts (ActiveModel)
So verwenden Sie Eclipse auf meinem PC mit 32 Bit und 2 GB Speicher
[Ruby on Rails] Wie schreibe ich eine Enumeration auf Japanisch?
Rails / Ruby: So erhalten Sie HTML-Text für Mail
[Ruby on Rails] So ändern Sie den Spaltennamen
[Ruby On Rails] So setzen Sie die Datenbank in Heroku zurück
Wie man GitHub für Super-Anfänger benutzt (Teamentwicklung)
[Grobe Erklärung] So trennen Sie den Betrieb der Produktionsumgebung und der Entwicklungsumgebung mit Rails
[Rails] Verwendung von Enum
Verwendung von Ruby return
[Rails] Verwendung von Enum
Verwendung von Rails Join
Ruby: Wie man Cookies benutzt
[Rails] Verwendung der Validierung
[Rails] So verwenden Sie authenticate_user!
[Schienen] Verwendung von Scope
[Für Anfänger] Erläuterung von Klassen, Instanzen und Statik in Java
[Ruby on Rails] Eliminierung von Fat Controller-First, Logik zum Modell-
So verwenden Sie das Font Awesome-Symbol für ul und li
So zeigen Sie Diagramme in Ruby on Rails an (LazyHighChart)
So führen Sie React und Rails auf demselben Server aus
Verfahren zum Übergeben von RealmObject an Fragment und zur Verwendung von Parceler
Umgang mit verschiedenen Versionen von rbenv und Ruby
[Schienen] Verwendung von Geräten (Hinweis)