qiita.rb
link_to 'Linkname', 'Präfixname+ _path'
・ Erstellt automatisch HTML (erstellt href) ・ Verwenden Sie hauptsächlich die folgenden drei
○text_field ⇨ Vom Benutzer geschriebener Speicherplatz ⇨ Beschreiben Sie den Inhalt, der in eine Zeile passt
○text_area ⇨ Vom Benutzer geschriebener Speicherplatz ⇨ Im Vergleich zu form_with ausführlich beschrieben ○submit ⇨ Verarbeitung, wenn der Benutzer drückt, um auf eine andere URL zuzugreifen, z. B. eine Senden-Schaltfläche oder eine Eingabetaste
ruby:qiita.html.erb
<%= form_with model:@question, local:true do |f| %>
<%= f.text_field :name, class: "form-control" %>
<%= f.text_area :content, class: "form-control" %>
<%= f.submit "Senden", class: "btn btn-primary" %>
<% end %>
[Erläuterung] ○form_with model:@question ⇨ Die Erklärung hier ist kompliziert, daher werde ich sie im Folgenden ausführlich erläutern.
○local:true ⇨ Deaktivieren Sie das asynchrone Kommunikationsformular ⇨ Details sind unbekannt und müssen separat untersucht werden ...
○do |f| ⇨ Speichern Sie die Hashes in @question separat
○f.text_field :name ⇨ Extrahieren Sie den Wert, der auf Folgendes trifft, und zeigen Sie ihn an: Name aus den getrennten Elementen.
○f.text_area :content ⇨ Extrahieren Sie den Wert, der auf Folgendes trifft, und zeigen Sie ihn an: Inhalt aus den Stücken
○ f.submit "submit" ⇨ Zeigen Sie "Senden" auf der Schaltfläche an
Die folgenden zwei Dinge sind hier wichtig ① Das Senden wird mit der POST-Methode </ font> gesendet (2) Wie viele Modellnamen enthält das Formular (form_with method use page)? -Wenn es nur ein Modell gibt, geben Sie die URL im Präfix an, die nur Modellname + s </ font> als Zeichenfolge enthält -Wenn es zwei oder mehr Modelle gibt, geben Sie die URL im Präfix an, die nur Modellname 1_Modellname 2 + s </ font> als Zeichenfolge enthält. ・ * (Definiert als Modellname 1, Modellname 2, ..., Modellname n von der Seite näher an der Pfadwurzel)
○ Bestätigen Sie während des Routings mit 2 Beispielmustern, wie unten gezeigt
Prefix Verb URI Pattern Controller#Action
answers_edit GET /answers/edit(.:format) answers#edit
root GET / questions#index
question_answers GET /questions/:question_id/answers(.:format) answers#index
POST /questions/:question_id/answers(.:format) answers#create
new_question_answer GET /questions/:question_id/answers/new(.:format) answers#new
edit_question_answer GET /questions/:question_id/answers/:id/edit(.:format) answers#edit
question_answer GET /questions/:question_id/answers/:id(.:format) answers#show
PATCH /questions/:question_id/answers/:id(.:format) answers#update
PUT /questions/:question_id/answers/:id(.:format) answers#update
DELETE /questions/:question_id/answers/:id(.:format) answers#destroy
questions GET /questions(.:format) questions#index
POST /questions(.:format) questions#create
new_question GET /questions/new(.:format) questions#new
edit_question GET /questions/:id/edit(.:format) questions#edit
question GET /questions/:id(.:format) questions#show
PATCH /questions/:id(.:format) questions#update
PUT /questions/:id(.:format) questions#update
DELETE /questions/:id(.:format) questions#destroy
answers_edit GET /answers/edit(.:format) answers#edit
root GET / questions#index
question_answers GET /questions/:question_id/answers(.:format) answers#index
POST /questions/:question_id/answers(.:format) answers#create
new_question_answer GET /questions/:question_id/answers/new(.:format) answers#new
edit_question_answer GET /questions/:question_id/answers/:id/edit(.:format) answers#edit
question_answer GET /questions/:question_id/answers/:id(.:format) answers#show
[Über ①] ・ Senden wird per POST-Methode gesendet -Destination Path Kandidaten werden unter Prefixn auf POST eingegrenzt
Prefix Verb URI Pattern Controller#Action
question_answers POST /questions/:question_id/answers(.:format) answers#create
questions POST /questions(.:format) questions#create
[Über ②] ・ Konzentrieren Sie sich auf die URL der Seite, auf der das Formular angezeigt wird -Form_with wird in der URL von / questinos / new angezeigt ・ Enthält eine Frage -Prefix gibt eine URL für das Präfix an, die nur den Modellnamen + s als Zeichenfolge enthält ・ Geben Sie daher Fragen an
[Über ①] ・ Ähnlich wie bei Muster 1 mit der POST-Methode eingrenzen
[Über ②] ・ Konzentrieren Sie sich auf die URL der Seite, auf der das Formular angezeigt wird -Form_with wird in der URL von / Fragen /: Fragen_ID / Antworten / Neu angezeigt ・ Es sind zwei Modelle enthalten: Frage und Antwort.
Recommended Posts