Hinzufügen und Speichern von Rails-Datenbankerstellung

Einführung

Erstellen Sie eine Web-App, die CRUD (Erstellen, Lesen, Aktualisieren, Löschen) wie die einfachste Twitter-App ausführen kann.

Erstellen einer Tabelle und Reflektieren ihres Inhalts

$ rails g model Post content:text
//Schienen g Modell Tabellenname(Einzelne Form)Spaltenname:Datentyp(Welche Art von Daten werden eingegeben)

$ rails db:migrate
//Reflektieren Sie den Inhalt der Migrationsdatei = Tabelle(DB)Können

Der Tabellenname ist einseitig.

$ rails console

> post = Post.new(content:"Hello World")
//Erstellen Sie eine "Post-Instanz" mit Inhalten von Hello World

> post.save  

> posts = Post.all
> posts[0] //posts[0]Kann bestätigt werden

Im Aktionsindex im Beitragscontroller Erstellen Sie einen Funktionsindex, der den Inhalt des Blogs aus der Tabelle empfängt.

class PostsController < ApplicationController
  def index
    @posts = Post.all
    # @posts = [
    #   "Ich studiere Rails von heute!",
    #   "Postlistenseite wird erstellt!",
    #   "Ich habe heute einen Snack gegessen!",
    #   "Ich möchte Schokolade essen",
    #   "Nach langer Zeit war es heute sonnig"
    # ]
  end
end

Wenn Sie der Variablen @ hinzufügen, können Sie von anderen Dateien aus darauf zugreifen. Verwenden Sie daher "@ posts". Es kann so in HTML angezeigt werden.

  <div class="container">
    <% @posts.each do |post| %>
        <div class="posts-index-item">
            <%=post.content %>
        </div>
    <% end %>

Wenn CSS angeordnet ist, sieht es so aus. Ich konnte es über die Rails-Konsole hinzufügen! !! !! !! スクリーンショット 2020-10-20 20.24.50.png

Stellen Sie HTML zusammen

Schreiben Sie den HTML-Code, den Sie auf einer beliebigen Seite in application.html.erb anzeigen möchten Wie der Header.

Eine Methode, die das Erstellen von Links vereinfacht

Schreiben Sie dies in HTML mit <li> </ li>.

<%=link_to("TweetApp","/") %>

Lassen Sie uns einen neuen Buchungsbildschirm erstellen

Überprüfen Sie die Beiträge mit der ID: 3

$ rails console

> post = Post.find_by(id: 3)
> post.content
> post.created_at #Buchungszeit

Route

  #Post-Detail-Seiten-Routing
  get "posts/:id" => "posts#show"

Senden Sie aus dem Post-Formular

form_tag Methode

<%=form_tag(url)%>
<%end%>

redirect_to Methode

  def create
    redirect_to("/posts/index")
  end
    <%=form_tag("/posts/create")%>
        <div class="form">
        <div class="form-body">
            <textarea name="content"></textarea>
            <input type="submit" value="Post">
        </div>
        </div>
    <%end%>

Es wird als "Inhalt: (geposteter Inhalt)" in einer Hash-Tabelle namens "params" gespeichert Neu, speichern und wie folgt umleiten

  #Fügen Sie eine Erstellungsaktion hinzu
  def create
    @post = Post.new(content: params[:content]) 
    @post.save
    redirect_to("/posts/index")
  end

Beiträge bearbeiten und löschen

Bearbeitungsfunktion

rails console
> post = Post.find_by(id: 1)
> post.content = "apple" #Überschreiben
> post.save

Funktion löschen

rails console
> post = Post.find_by(id: 1)
> post.destroy

Recommended Posts

Hinzufügen und Speichern von Rails-Datenbankerstellung
Hinzufügen, Speichern, Löschen, Hinzufügen von Spalten, Speichern von Bildern aus der Rails-DB-Erstellung
Zugabe von bind.pry (Schienen)
Grundlagen der Rails-Datenbank
Speichern Sie Daten aus einer Excel-Datei mit Rails gem roo
[Ruby on Rails] Von der MySQL-Konstruktion zum Datenbankwechsel
Cloud9 (Rails) von Github
Portfolioerstellung Ruby on Rails
[Schienen] Speichern Sie Bilder mit Carrierwave
Erstellung des Schienenreferenztyps hinzugefügt
[Schienen] Spalte zum Entwickeln hinzufügen
Aggregate Rails-Aufzählung aus SQL