[RUBY] Wie benutzt man active_hash! !!

Ich habe versucht, active_hash beim Erstellen einer Frima-App an einer bestimmten Programmierschule zu verwenden. Schauen Sie also bitte mal rein! !! Dieser Artikel wurde von einem Anfänger geschrieben, aber ich hoffe, Sie finden ihn hilfreich: pray_tone2:

Was ist überhaupt active_hash?

-Es ist nicht so wichtig wie das Speichern als Daten in der Datenbank. ・ Grundsätzlich wird es nicht geändert. -Es kann einen Hash verarbeiten, der schreibgeschützte Informationen wie Active_Record sammelt.

1. Installieren Sie gem'active_hash '

Schreiben Sie Folgendes in das Gemfile der App

gem 'active_hash'

Führen Sie die Bundle-Installation im Terminal aus

$ bundle install

2. Erstellen Sie ein Modell, das Active_Hash :: Base erbt

Erstellen Sie Ihr eigenes Modell, das ActiveHash :: Base erbt.

Dieses Mal werden wir ein Präfekturmodell erstellen, in dem active_hash häufig verwendet wird.

Ich mache es mir selbst wie app / models / prefecture.rb.

prefecture.rb



class Prefecture < ActiveHash::Base
  self.data = [
      {id: 1, name: 'Hokkaido'}, {id: 2, name: 'Präfektur Aomori'}, {id: 3, name: 'Präfektur Iwate'},
      {id: 4, name: 'Präfektur Miyagi'}, {id: 5, name: 'Akita'}, {id: 6, name: 'Präfektur Yamagata'},
      {id: 7, name: 'Präfektur Fukushima'}, {id: 8, name: 'Präfektur Ibaraki'}, {id: 9, name: 'Präfektur Tochigi'},
      {id: 10, name: 'Präfektur Gunma'}, {id: 11, name: 'Saitama'}, {id: 12, name: 'Präfektur Chiba'},
      {id: 13, name: 'Tokio'}, {id: 14, name: 'Präfektur Kanagawa'}, {id: 15, name: 'Präfektur Niigata'},
      {id: 16, name: 'Präfektur Toyama'}, {id: 17, name: 'Präfektur Ishikawa'}, {id: 18, name: 'Präfektur Fukui'},
      {id: 19, name: 'Präfektur Yamanashi'}, {id: 20, name: 'Präfektur Nagano'}, {id: 21, name: 'Präfektur Gifu'},
      {id: 22, name: 'Präfektur Shizuoka'}, {id: 23, name: 'Präfektur Aichi'}, {id: 24, name: 'Präfektur Mie'},
      {id: 25, name: 'Präfektur Shiga'}, {id: 26, name: 'Kyoto'}, {id: 27, name: 'Präfektur Osaka'},
      {id: 28, name: 'Präfektur Hyogo'}, {id: 29, name: 'Präfektur Nara'}, {id: 30, name: 'Präfektur Wakayama'},
      {id: 31, name: 'Präfektur Tottori'}, {id: 32, name: 'Präfektur Shimane'}, {id: 33, name: 'Präfektur Okayama'},
      {id: 34, name: 'Präfektur Hiroshima'}, {id: 35, name: 'Präfektur Yamaguchi'}, {id: 36, name: 'Präfektur Tokushima'},
      {id: 37, name: 'Präfektur Kagawa'}, {id: 38, name: 'Präfektur Ehime'}, {id: 39, name: 'Präfektur Kochi'},
      {id: 40, name: 'Präfektur Fukuoka'}, {id: 41, name: 'Präfektur Saga'}, {id: 42, name: 'Präfektur Nagasaki'},
      {id: 43, name: 'Präfektur Kumamoto'}, {id: 44, name: 'Präfektur Oita'}, {id: 45, name: 'Präfektur Miyazaki'},
      {id: 46, name: 'Präfektur Kagoshima'}, {id: 47, name: 'Präfektur Okinawa'}
  ]
end

3. Bilden Sie eine Vereinigung

Da wir diesmal eine Frima-App erstellen, werden die Präfekturen bei der Registrierung der Lieferadresse des Produkts mit active_hash angezeigt. Wir werden eine Verbindung in product.rb herstellen.

product.rb


class Product < ApplicationRecord
  extend ActiveHash::Associations::ActiveRecordExtensions
  belongs_to_active_hash :prefecture
end

4. Anzeige

Wenn Sie collection_select im Formular zum Registrieren von Produkten verwenden, kann dies wie folgt angezeigt werden.

Image from Gyazo


= f.collection_select :prefecture_id, Prefecture.all, :id, :name, {prompt:"Bitte auswählen"}, {class:""}

5. Wenn Sie die registrierten Informationen anzeigen möchten

= @product.prefecture.name

Sie können active_hash so verwenden! !!

Danke, dass du bis zum Ende zugesehen hast: pray_tone2:

Ich hoffe, Sie finden es hilfreich: thumbsup_tone2:

Recommended Posts

Wie benutzt man active_hash! !!
Verwendung von Map
Wie benutzt man rbenv?
Verwendung mit_option
Verwendung von fields_for
Verwendung von java.util.logging
Verwendung der Karte
Verwendung von collection_select
Wie benutzt man Twitter4J
Verwendung von MapStruct
Verwendung von TreeSet
[Verwendung des Etiketts]
Wie man Identität benutzt
Wie man Hash benutzt
Verwendung von Dozer.mapper
Wie benutzt man Gradle?
Verwendung von org.immutables
Verwendung von java.util.stream.Collector
Verwendung von VisualVM
Verwendung von Map
Verwendung der Ketten-API
[Java] Verwendung von Map
Verwendung der Warteschlange mit Priorität
[Rails] Verwendung von Enum
Verwendung von Java Optional
Verwendung von Ruby return
[Rails] Verwendung von Enum
Verwendung von @Builder (Lombok)
Verwendung der Java-Klasse
[Java] Verwendung von removeAll ()
Verwendung von String [] args
Verwendung von Rails Join
Verwendung von Java Map
Ruby: Wie man Cookies benutzt
Verwendung von abhängigen :: zerstören
Verwendung von Eclipse Debug_Shell
Verwendung von Apache POI
[Rails] Verwendung der Validierung
Verwendung von Java-Variablen
[Rails] So verwenden Sie authenticate_user!
Verwendung von GC Viewer
Wie man Lombok jetzt benutzt
[Erstellen] Verwendung von JUnit
[Schienen] Verwendung von Scope
Verwendung der link_to-Methode
[Rails] Wie man Edelstein "devise" benutzt
Wie man Lombok im Frühling benutzt
Verwendung von StringBurrer und Arrays.toString.
Verwendung des Arrays (persönliches Memorandum)
Verwendung von HttpClient (Get) von Java
Verwendung des Bereichs (JSP & Servlet)
Verwendung der include? -Methode