[RAILS] So verweisen Sie auf eine Spalte, wenn Sie die Spaltennamensmethode in ActiveRecord überschreiben

Hintergrund

Ich möchte eine Instanzmethode mit demselben Namen wie der DB-Spaltenname im Modell definieren und dann auf die Spalte in dieser Methode verweisen.

Methode

Es scheint zwei Methoden zu geben

class Person < ApplicationRecord
  def name
    self[:name]
  end

  def name
    read_attribute(:name)
  end
end

In The Rails Style Guide ist self [: name] besser. Empfehlen

Referenz

https://github.com/satour/rails-style-guide/blob/master/README-jaJA.md#read-attribute https://stackoverrun.com/ja/q/5968719

Recommended Posts

So verweisen Sie auf eine Spalte, wenn Sie die Spaltennamensmethode in ActiveRecord überschreiben
So erhalten Sie den Namen einer Klasse / Methode, die in Java ausgeführt wird
Speichern der im Textbereich eingegebenen Informationen in einer Variablen in der Methode
[Rails Tutorial Kapitel 2] Was tun, wenn Sie einen Fehlern im Spaltennamen machen?
[Ruby on Rails] So ändern Sie den Spaltennamen
[Rails] So ändern Sie den Spaltennamen der Tabelle
So verspotten Sie einen Super-Methodenaufruf in PowerMock
So erhalten Sie den Klassennamen des Arguments von LoggerFactory.getLogger, wenn Sie SLF4J in Java verwenden
Verwendung der Getter / Setter-Methode (in Objektorientierung)
So stellen Sie die Chronik ein, wenn sich die Zeit in CentOS7 verschiebt
So erstellen Sie ein Platzhalterteil zur Verwendung in der IN-Klausel
Erstellen Sie eine Methode, um den Steuersatz in Java zurückzugeben
So fügen Sie dieselben Indizes in ein verschachteltes Array ein
Verwendung der link_to-Methode
So führen Sie einen bestimmten Vorgang aus, wenn die Zurück-Taste im Android-Fragment gedrückt wird
Verwendung der include? -Methode
So benennen Sie Variablen in Java
So geben Sie den Wert aus, wenn sich ein Array im Array befindet
[jOOQ] Wie in der WHERE / AND / OR-Klausel WANN FALLEN
Warum Sie die Überschreibungsanmerkung hinzufügen sollten, wenn Sie eine Methode überschreiben
Fügen Sie dem JAR-Dateinamen in Gradle einen Zeitstempel hinzu
So beheben Sie den unbekannten Fehler, der bei der Verwendung von slf4j in Java aufgetreten ist
[Java] So suchen Sie mit der Methode includes nach Werten in einem Array (oder einer Liste)
Speicherort der Methodendefinition Zusammenfassung der zu überprüfenden Informationen Wenn im Projekt und in Rails / Gem definiert
So ändern Sie den App-Namen in Rails
Java-Referenz zum Verständnis in der Abbildung
So fügen Sie ein Video in Rails ein
[Schienen] Verwendung der Kartenmethode
[Java] Verwendung der toString () -Methode
Wie man Parameter in der link_to-Methode hat
So testen Sie eine private Methode und verspotten sie teilweise in Java
So erhalten Sie das aktuelle Datum als Zeichenfolge im Format JJJJMMTT
So ermitteln Sie die Gesamtzahl der Seiten beim Paging in Java
So beschränken Sie die Aktion des Übergangsziels, wenn Sie nicht angemeldet sind
So ändern Sie den Wert einer Variablen an einem Haltepunkt in IntelliJ
So übergeben Sie einen Proxy, wenn Sie REST mit SSL in Java auslösen
So ermitteln Sie den absoluten Pfad eines in Java ausgeführten Verzeichnisses
[Schienen] So erstellen Sie eine Tabelle, fügen eine Spalte hinzu und ändern den Spaltentyp
graphql-ruby: So erhalten Sie den Namen der Abfrage oder Mutation im Controller Hinweis
So überprüfen Sie das Protokoll im Docker-Container
[Rails] Wie schreibe ich, wenn ich eine Unterabfrage mache?
So zeigen Sie eine Webseite in Java an
So erhalten Sie die ID eines Benutzers, der sich in Swift bei Firebase authentifiziert hat
Wenn Eclipse den Server nicht starten kann
Wenn Sie sich im Klassennamen verlieren
So beheben Sie einen Absturz beim Löschen von Realm-Daten in der Liste der schnellen Benutzeroberfläche
Benennen und rufen Sie in Ruby übergeordnete Klassenmethoden explizit auf
Wenn Sie die Methode außerhalb verwenden möchten
So löschen Sie die Datenbank beim Neuerstellen der App
So führen Sie eine djUnit-Aufgabe in Ant aus
Ausgabe der Verwendung der Slice-Methode
So fügen Sie in Spring Boot einen Klassenpfad hinzu
So erstellen Sie ein Thema in Liferay 7 / DXP
So erstellen Sie eine Beurteilungsmethode, um nach einem beliebigen Zeichen im Array zu suchen
So implementieren Sie eine ähnliche Funktion in Rails
Als ich eine Methode für Premium Friday erstellen wollte, war sie bereits in der Java 8-Standard-API enthalten
Gibt es keinen Namenskonflikt, wenn enum in der switch-Anweisung denselben Namen hat?
So erstellen Sie einfach ein Pulldown mit Rails