[RUBY] Fügen Sie Daten mithilfe der Yaml-Datei in die Datenbank ein

1) Hintergrund </ font>

Yaml-Dateien werden häufig für Umgebungseinstellungen verwendet, aber Yaml-Dateien sind praktischer als CSV-Dateien, wenn Sie Standarddaten vorab in Ihrer Anwendung in der Datenbank registrieren möchten.

Wenn Sie ein Portfolio wie ich erstellen, müssen Sie die Beispieldaten festlegen, ohne sich dessen bewusst zu sein. Ich denke, dass yaml in der Szene erscheint, in der es nicht in der Quelle geschrieben ist, csv nicht lesbar ist und so weiter.

2) Umgebung </ font>

Artikel Inhalt
OS.Catalina v10.15.4
Ruby v2.5.1
Ruby On Rails v5.2.4.3

3) Inhalt </ font>

** Korrespondenz 1) Erstellung einer Yaml-Datei ** Sie können detaillierte Einstellungen vornehmen. Ich werde es hier weglassen. Siehe das Datenbild unten.

default_user.yml


- id: 1,
  password: 111111
  name: 'Nicht registrierter Benutzer'
  email: '[email protected]'

** Korrespondenz 2) Erstellen Sie einen Dienst, der yaml liest und ausgibt ** Es ist etwas lang, aber ich habe den Dienst wie folgt erstellt. Bei require ('yaml') ist eine Erweiterung erforderlich.

user_insert_service.rb


 1 class MakeDefaultDataService
 2   require('yaml')
(Kürzung)

 3   def insert_user_data
 4     begin
 5       default_user = User.new
 6       insert_data = YAML.load_file('app/lib/yaml/default_user.yml')
 7       insert_data.each do | data |
 8         default_user.id = data["id"]
 9         default_user.password = data["password"]
10         default_user.name = data["name"]
11       end
12       default_user.save
13     rescue
14       p "(Benutzer) Daten konnten nicht registriert werden."
15     end
16   end

Wenn diese Methode ausgeführt wird, werden die Daten in der Variablen "insert_data" in der 4. Zeile wie folgt festgelegt.

[{"id"=>1, "password"=>111111, "name"=>"Nicht registrierter Benutzer", "email"=>"[email protected]"}]

Sie müssen lediglich die Daten entsprechend verarbeiten und in der Datenbank festlegen. Es ist bequem. das ist alles.