Ich habe die rudimentären Dinge zusammen mit MVC gelernt.
Referenz: Progate Ruby on Rails
#Projekterstellung
$Schienen neuer Anwendungsname
#Starten Sie den Server localhost:????Zugang durch
$rails sever
#Erstellen Sie einen Controller
#Schienen erzeugen Controller Controller Name Aktionsname
$rails generate controller home top
#localhost:????/home/top
#Die Seite wird automatisch vom Befehl generiert
Controller
Anwendungsname /app/controller/controller.rb
Homecontrollers.rb
class HomeController < ApplicationController
def top
end
end
Anwendungsname /config/routes.rb
routes.rb
Rails.application.routes.draw do
get"home/top" => "home#top"
#URL-Controller-Name # Aktionsname
end
Zugriff auf localhost zulassen: ???? / Ranking
Versuchen Sie, ein Ranking am Übergangsziel zu erstellen Mit anderen Worten Versuchen Sie, den Prozess für den URL-Übergang zu beschreiben, damit mit localhost auf ihn zugegriffen werden kann: ???? / ranking
Homecontrollers.rb
class HomeController < ApplicationController
def top
end
#Hier wurde das entsprechende Routing und Aktionsranking hinzugefügt
def ranking
end
end
URL | Regler | Aktion |
---|---|---|
home/top | home | top |
ranking | home | ranking |
routes.rb
Rails.application.routes.draw do
get"home/top" => "home#top"
#URL-Controller-Name # Aktionsname
get"ranking" => "home#about"
end
View Schreiben Sie in html.erb Wie schreibe ich Ruby in html.erb Impressionen: Soll ich das Prinzip nicht anwenden? Die Code-Sichtbarkeit ist möglicherweise schlecht
Beispiel: Schleife die Liste
html.erb
<%
lists = [
"good",
"bad"
]
%>
<% lists.each do|list|% >
<div class="list">
<% list %>
</div>
<% end %>
Homecontrollers.rb
class HomeController < ApplicationController
#@Etwas anziehen
def top
@lists = [
"good",
"bad"
]
end
end
html.erb
<% @lists.each do|list|% >
<div class="list">
<% list %>
</div>
<% end %>
Konvertierung in einen Code, der die Migrationsdatenbank versteht SQL-Anweisung wenn möglich [SELECT, INSERT, UPDATE, DELETE ] Es kann schnell zu verstehen sein, ob Sie schreiben können.
#Schienen erzeugen Dies ist lang, also ist g in Ordnung
$rails g model Post contents:text
#Post ・ ・ ・ ・ ・ ・ ・ ・ Verwenden Sie beim Erstellen mehrerer Formulare, z. B. Posts, das einzelne Formular
#content:· · · Spaltenname
#Text type ・ ・ ・ ・ ・ ・ ・ type Datentyp
Erstellt zum Zeitpunkt der Ausführung des oben genannten Vorgangs Anwendungsname /db/migrate/yyyymmddhhmmss_create_posts.rb
Inhalt
posts.rb
class CreatePosts < ActiveRecord::Migration[5.0]
def change
create_table :posts do |t|
t.text :content
t.timestamps
end
end
end
ActiveRecord::PendingMigrationError Ich denke, dass der Fehler durch Ausführen von $ Rails db: migrate behoben werden kann.
Wenn Sie mit der vorhandenen Migrationsdatei auf die Seite zugreifen Ein Migrationsfehler tritt auf.
Sie können die Verarbeitung interaktiv schreiben
$rails console
>post = Post.new(content:"test")
#Nach der Instanziierung
#Testen Sie den Inhalt der Beitragstabelle
>post.save
#Speichern Sie die Post-Instanz in einer Tabelle
#In der Spalte DB-Inhalt gespeichert
>Ende beenden
$rails console
>post = Post.first
>post.content
>posts = Post.all
# SELECT "posts".* FROM "posts"
>posts[0]
#id: 1,
#content: "Inhalt",
#created_at: Thu, 29 Oct 2020 16:14:30 JST +09:00,
#updated_at: Thu, 29 Oct 2020 16:14:30 JST +09:00>
> posts[0].content
=># "Inhalt"
Homecontrollers.rb
class HomeController < ApplicationController
#@Informationen von der DB abrufen
def top
@posts = Post.all
end
Recommended Posts