[RUBY] Hinzufügen, Speichern, Löschen, Hinzufügen von Spalten, Speichern von Bildern aus der Rails-DB-Erstellung

Einführung

DB erstellen, Inhalte hinzufügen, speichern, mit Rails-Konsole löschen.

Erstellen einer Benutzertabelle

$ rails g model User name:string email:string
id name(string) email(string)
1 alice [email protected]
2 tom [email protected]

Änderungen in der Datenbank widerspiegeln

$ rails db:migrate

Daten hinzufügen (C)

$ rails console
> user = User.new(name:"alice", email:"[email protected]")
> user.save

Daten lesen (R)

> user = User.all
> user[0]

Datenaktualisierung (U)

> user = User.all
> user0 = user[0]
> user[0].name = "alice_alice"
> user[0].save

Daten löschen (D)

> user[0].destroy

Validierung

Die Validierung ist ein Mechanismus, mit dem überprüft wird, ob die Daten korrekt sind, bevor das Objekt in der Datenbank gespeichert wird.

Validierung zur Überprüfung auf "doppelte E-Mails"

class User < ApplicationRecord
    validates :email, {uniqueness: true}
end

Validierung zur Überprüfung der Anzahl der Zeichen

class Post < ApplicationRecord
    validates :content, {presence: true, length: {maximum: 140}}
end

Spalte hinzufügen

id name(string) email(string)
1 alice [email protected]
2 tom [email protected]

Fügen Sie dazu Benutzerbildinformationen hinzu!

$ rails g migration add_image_name_to_users

Die Datei wird dem Migrationsordner "/ db / migration /" hinzugefügt.

So lesen Sie die Migrationsdatei

Inhalt von / db / migration / 20201010_create_post.rb

Die Änderungsmethode wurde automatisch in der Migrationsdatei generiert, die von "Rails G Model" erstellt wurde. So konnte ich die Änderungen mit Rails db: migrate ohne besondere Änderungen widerspiegeln.

class CreateUsers < ActiveRecord::Migration[5.0]
    def change
        create_table :users do |t| #Erstellen Sie eine Tabelle mit dem Namen posts
            t.string :name #Erstellen Sie eine Spalte mit dem Namen name, deren Daten Zeichenfolge sind
            t.string :email #Erstellen Sie eine Spalte mit dem Namen E-Mail mit Datenzeichenfolge
            t.timestamps
        end
    end
end

Sie müssen die Spalten selbst hinzufügen

Dieses Mal werden wir eine Spalte hinzufügen, daher müssen wir den Inhalt der Änderungsmethode selbst schreiben.

class AddImageNameToUsers < ActiveRecord::Migration[5.0]
    def change
        add_column :uses, :image_name, :string #Tabellenname, Spaltenname, Datentyp
    end
end

Führen Sie den Inhalt der Änderungsmethode aus

$ rails db:migrate

Bild speichern

Eine Datei schreiben

Verwenden Sie "File.write".

$ rails console
> File.write("public/aaa.txt", "Hello World")
# File.write(Wo man schreibt,Inhalt)

Bilddaten schreiben

Verwenden Sie die Methoden "File.bin write" und "read". Schreiben Sie das geladene Bild in public / user_images / "1.jpg " und speichern Sie es.

    if image = params[:image]
      @user.image_name = "#{@user.id}.jpg "
      File.binwrite("public/user_images/#{@user.image_name}", image.read)
    end

Recommended Posts

Hinzufügen, Speichern, Löschen, Hinzufügen von Spalten, Speichern von Bildern aus der Rails-DB-Erstellung
Hinzufügen und Speichern von Rails-Datenbankerstellung
[Schienen] Speichern Sie Bilder mit Carrierwave
Hinzufügen, Ersetzen und Löschen von Java PDF-Bildern