[RUBY] Beziehung zwischen Rails Routing Controller-Ansicht

Dieser Artikel kann in 5 Minuten gelesen werden. Ich fand die Beziehung zwischen der Routing-Controller-Ansicht von Rails etwas verwirrend, daher fasse ich sie zusammen.

Voraussetzungen
  • Rails New hat ein App-Verzeichnis erstellt
  • Mit Schienen erstellte Modelle g Modell

Schlussfolgerung Erinnere dich so sehr!
  • Controller und Aktion für das Routing festlegen
  • Controller-Name = Pluralform des Modellnamens und erster Kleinbuchstabe
  • Dateiname der erb-Datei ... Aktionsname.html.erb
  • Fügen Sie die in der Aktion definierte Instanzvariable in die erb-Datei ein einbetten
  • erb-Datei wird in App> Ansichten> Controller-Name erstellt

Stellen Sie sicher, dass Controller und Aktion für das Routing eingestellt sind

routes.rb

Rails.application.routes.draw do
  # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html

  resources :posts #Index zum Posts Controller,Erstellen Sie alle Aktionen wie Bearbeiten
end

Controller

Erstellen
Schienen g Controller Controller Name

Der Controller-Name ist eine Pluralform des Modells und der Satzanfang steht in Kleinbuchstaben

Controller-Beschreibung Controller name_controller.rb
class PostsController < ApplicationController
  def index #Aktionsname
    @posts = Post.all.order(created_at: 'desc') #Mit Instanzvariablen definiert
  end
end
  • Index: Eine Aktion, die eine Listenseite anzeigt.

Datei anzeigen

index.html.erb

  • Stellen Sie sicher, dass die Zeichenfolge vor HTML der Aktion des Controllers entspricht. Erstellt in app> views> Controller-Name </ b>
<h2>My Posts</h2>

<ul>
 <% @posts.each do |post| %>Verwenden Sie Instanzvariablen, die in Controller-Aktionen definiert sind
 <li><%= post.title %></li>
 <% end %>
</ul>

Ich möchte die in der Indexaktion in HTML definierte Variable @post verwenden, daher habe ich eine erb-Datei erstellt, in die Ruby eingebettet werden kann. Ruby kann in den von <%%> umgebenen Teil eingebettet werden. Wenn Sie den Teil anzeigen möchten, in den Ruby eingebettet ist, fügen Sie = hinzu, um ihn zu <% =%> zu machen.

Sie haben jetzt eine Post-Controller-Indexaktion und eine entsprechende Ansichtsdatei. Und ich konnte bestätigen, dass die dem Controller entsprechenden Routen und die Aktion in route.rb ausgeführt werden.

Ich werde mich in einem anderen Artikel damit befassen, wie die tatsächlich angezeigten Daten aussehen.

[Werbung] In meinem Hauptgeschäft bin ich Dozent an einer Programmierschule. (Aber ich trainiere immer noch.) Wir planen, Note und Twitter zu aktualisieren und uns dabei auf das zu konzentrieren, was wir als Dozent bemerkt haben. Wenn Sie diesen Artikel hilfreich finden, folgen Sie uns bitte. Freut mich, dich kennenzulernen!

Klicken Sie hier, um eine Notiz zu erhalten Klicken Sie hier für Twitter

Recommended Posts