· Version 10.15.3 ・ Ruby Ruby 2.6.3p62 ・ Schienen 6.0.3.2
In diesem Artikel werden wir die Erstellung der Datenbank und die Anzeige in der Ansicht in Ruby on Rails6 als Vergessenheit aufzeichnen. Wenn Sie Probleme beim Erstellen einer Datenbank haben, hoffe ich, dass Sie diese nützlich finden.
Hier erstellen wir zunächst ein Verzeichnis. Die Erstellung der Datenbank wird später beschrieben. Wenn Sie sie kennen, können Sie sie überspringen!
Geben Sie den folgenden Befehl in ein beliebiges Verzeichnisziel ein. Da wir von einer Bereitstellung für Heroku ausgehen, haben wir außerdem eine Datenbank (postgresql) eingerichtet.
terminal
Schienen neuer Verzeichnisname-TB --database=postgresql
(Beispiel)↓
rails new form_test -TB --database=postgresql
Wenn Sie keine Datenbank festlegen müssen, ist der folgende Befehl kein Problem.
terminal
Schienen neuer Verzeichnisname
(Beispiel)↓
rails new form_test
Wechseln wir in das zuvor erstellte Verzeichnis und erstellen eine Seite.
terminal
Name des CD-Verzeichnisses
(Beispiel ↓)
cd form_test
terminal
Schienen erzeugen einen beliebigen Index für den Controller-Namen
(Beispiel)↓
rails generate controller Forms index
Ändern Sie für "Index" den Eingabenamen, um ihn zu erstellen. Es gibt kein Problem mit dem abgekürzten Befehl von generate → g. Außerdem sollte der Verzeichnisname pluralisiert werden, z. B. "Formulare", um die spätere Verwaltung zu vereinfachen.
terminal
Schienen g Controller beliebiger Namensindex
(Beispiel)↓
rails g controller Forms index
Wenn Sie für Routen Folgendes festlegen, wird es auf http: // localhost: 3000 / forms gesetzt.
config/routes
Rails.application.routes.draw do
# get "Beliebiger Name" => "Beliebiger Wert#index"
get "forms" => "forms#index"
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end
Ich werde es einmal mit einem Browser überprüfen. Geben Sie den Befehl ein, der im Browser angezeigt werden soll.
terminal
rails s
or
rails server
Wurde es angezeigt?
Ich habe es auch in der Postgresql-Verzeichniserstellung geschrieben, aber möglicherweise wird ein Fehler angezeigt (ich habe einen Fehler erhalten). Geben Sie in diesem Fall den folgenden Befehl ein.
terminal
rails db:create
Die Fehlerursache wird in einem anderen Artikel erläutert.
Von hier aus erstellen wir die Datenbank.
terminal
Schienen g Modelldatenbank Name Inhalt:text
(Beispiel)↓
rails g model Forms content:text
Datenbanknamen sind mit den Abkürzungen "Upper" und "Plural" einfacher zu verwalten. Nicht weggelassen ↓ Aber OK
terminal
Rails generieren den Inhalt des Modelldatenbanknamens:text
(Beispiel)↓
rails generate model Forms content:text
Migrieren Sie nach dem Erstellen der Datenbank. Wenn Sie es vergessen, wird beim Überprüfen mit Ihrem Browser eine Fehlermeldung angezeigt.
terminal
rails db:migrate
Instantisieren. Geben Sie dazu zuerst Rails Console in den Befehl ein.
terminal
rails console
Beliebiger Name=Name der Datenbank.new(content: "Ich studiere ab heute Rails bei Progate!")
Beliebiger Name.save
(Beispiel)↓
form1 = Form.new(content: "test")
form1.save
Wenn Sie beim Erstellen eines Verzeichnisses ↓ eingeben, handelt es sich nebenbei um "Formulare (Pluralform)". Daher ist es besser, es beim Hinzufügen einer Datenbank auf "Formular (Einzelformular)" zu setzen.
terminal
rails generate controller forms index
Nach dem Hinzufügen eines Beitrags speichern Sie bitte. Auf diese Weise wird Ihr Beitrag gespeichert.
terminal
Beliebiger Name.save
(Beispiel)↓
form1.save
quit
quit ist der Befehl zum Verlassen der Rails-Konsole. Sie können mehrere Beiträge speichern, indem Sie diesen Vorgang wiederholen.
terminal
Diesmal i"Verzeichnisname=Name der Datenbank.all"Wird genutzt.
Verzeichnisname=Name der Datenbank.all
forms = Form.all
→ Alle Werte abrufen
Verzeichnisname[0]
forms[0]
→ Holen Sie sich den ersten Wert
Verzeichnisname[0].content
forms[0].content
→ Anfangswert(content)Erhalten
Das ist alles für die Erstellung der Datenbank. Als nächstes werden wir daran arbeiten, es in der Ansicht anzuzeigen.
Sie können alle veröffentlichten Inhalte abrufen, indem Sie "Verzeichnisname = Datenbankname.all" festlegen, die zum Abrufen der Datenbank im Controller verwendet werden.
In Ruby muss "form" von @ begleitet sein, z. B. "@form".
app/controllers/Irgendein_controller.rb
class PostsController < ApplicationController
def index
# @Verzeichnisname=Name der Datenbank.all
@forms = Form.all
end
end
rb:app/views/Irgendein/index.html.erb
<h1>Forms#index</h1>
<p>Find me in app/views/forms/index.html.erb</p>
<% @Verzeichnisname.each do |form| %>
<div>
<%=Einzelne Form des Verzeichnisnamens.content %>
</div>
<% end %>
Beispiel ↓
rb:app/views/Irgendein/index.html.erb
<h1>Forms#index</h1>
<p>Find me in app/views/forms/index.html.erb</p>
<% @forms.each do |form| %>
<div>
<%= form.content %>
</div>
<% end %>
rb:app/views/Irgendein/index.html.erb
<% @forms.each do |form| %>
wird bearbeitet
<% end %>
Sie können mit jedem iterieren. Ebenfalls
rb:app/views/Irgendein/index.html.erb
<%= form.content %>
Zeigt den "Inhalt" der Datenbank an.
Bitte beachten Sie, dass in Ruby aufgrund der unterschiedlichen Notation von ↓ ein anderes Verhalten auftritt. Hier möchten wir den Inhalt der Datenbank anzeigen, geben Sie also <% = form.content%> ein.
rb:app/views/Irgendein/index.html.erb
<%= form.content %>
→ Zeichenkette in der Ansicht anzeigen(=Wichtig)
<% form.content %>
→ Zeigen Sie das Ergebnis der angezeigten Zeichenfolge nicht an
Wenn es kein Problem gibt, können Sie es an den Routen überprüfen. Ich habe versucht, test1 und test2 im Test anzuzeigen.
Die obigen Tests werden auf Github veröffentlicht. Wenn Sie es ausprobieren möchten, laden Sie es bitte herunter.
Vielen Dank, dass Sie so weit gelesen haben. Das ist alles, um eine Datenbank zu erstellen und in einer Ansicht in Ruby on Rails6 anzuzeigen. Die Routen und Controller-Einstellungen sind kompliziert und etwas anstrengend, aber ich hoffe, sie werden in der Ansicht angezeigt.
Bücher: <a href = "https://www.amazon.co.jp/%E3%81%9F%E3%81%AE%E3%81%97%E3%81%84Ruby-%E7%AC%AC6 % E7% 89% 88-Informatik-IDEE-% E9% AB% 98% E6% A9% 8B / dp / 4773939848 / ref = sr_1_1? __Mk_ja_JP =% E3% 82% AB% E3% 82% BF% E3% 82 % AB% E3% 83% 8A & dchild = 1 & keywords =% E3% 81% 9F% E3% 81% AE% E3% 81% 97% E3% 81% 84Ruby +% E7% AC% AC6% E7% 89% 88 & qid = 1600088731 & s = books & sr = 1-1 "target =" blank "> Fun Ruby 6. Ausgabe
Außerdem gibt es einen Link zum Twitter-Portfolio, wenn Sie also interessiert sind Bitte verbinden. Ich würde mich sehr freuen, Freunde zu haben, mit denen ich mein Programmierlernen teilen kann.
Recommended Posts