Als «activerecord» getaggte Fragen

Active Record ist ein Muster, das Domänenlogik mit Speicherabstraktion in einem einzelnen Objekt kombiniert. Verwenden Sie dieses Tag für Fragen zum Muster, [Rails-Activerecord] für Fragen zum Rails ORM-Framework.


6
Verwenden von Helfern im Modell: Wie füge ich Hilfsabhängigkeiten hinzu?
Ich schreibe ein Modell, das Benutzereingaben aus einem Textbereich verarbeitet. Nach den Ratschlägen von http://blog.caboo.se/articles/2008/8/25/sanitize-your-users-html-input bereinige ich die Eingabe im Modell, bevor ich sie mit dem before_validate in der Datenbank speichere zurückrufen. Die relevanten Teile meines Modells sehen folgendermaßen aus: include ActionView::Helpers::SanitizeHelper class Post < ActiveRecord::Base { before_validation :clean_input ... …




4
So erhalten Sie den ursprünglichen Wert eines Attributs in Rails
Gibt es eine Möglichkeit, den ursprünglichen Wert eines ActiveRecord-Attributs abzurufen (= den Wert, der aus der Datenbank geladen wurde)? Ich möchte so etwas in einem Beobachter before_save object do_something_with object.original_name end Die Aufgabe besteht darin, das Objekt beim Aktualisieren aus einer Hash-Tabelle zu entfernen (tatsächlich in einen anderen Schlüssel in …

4
Wie implementiere ich has_many: durch Beziehungen zu Mongoid und Mongodb?
Wie modelliert man anhand dieses modifizierten Beispiels aus den Rails- Handbüchern eine relationale Assoziation "has_many: through" mit Mongoid? Die Herausforderung besteht darin, dass Mongoid has_many: through nicht unterstützt wie ActiveRecord. # doctor checking out patient class Physician < ActiveRecord::Base has_many :appointments has_many :patients, :through => :appointments has_many :meeting_notes, :through => …

8
So stellen Sie fest, ob ein Datensatz gerade in after_save erstellt oder aktualisiert wurde
Der #new_record? Funktion bestimmt, ob ein Datensatz gespeichert wurde. Aber es ist immer falsch im after_saveHaken. Gibt es eine Möglichkeit, anhand der Aktualisierung festzustellen, ob es sich bei dem Datensatz um einen neu erstellten oder einen alten Datensatz handelt? Ich hoffe, keinen weiteren Rückruf before_createzu verwenden, um beispielsweise ein Flag …

2
Verfallswarnung bei Verwendung von has_many: through: uniq in Rails 4
Rails 4 hat eine Verfallswarnung eingeführt, wenn Folgendes verwendet wird: uniq => true mit has_many: through. Beispielsweise: has_many :donors, :through => :donations, :uniq => true Gibt folgende Warnung aus: DEPRECATION WARNING: The following options in your Goal.has_many :donors declaration are deprecated: :uniq. Please use a scope block instead. For example, …

5
Schienen, die das Array von Objekten nach Attributwerten filtern
Also führe ich eine Abfrage an die Datenbank durch und habe ein vollständiges Array von Objekten: @attachments = Job.find(1).attachments Jetzt, wo ich ein Array von Objekten habe, möchte ich keine weitere Datenbankabfrage mehr ausführen, aber ich möchte das Array basierend auf den AttachmentObjekten filtern , file_typedamit ich eine Liste mit …


3
Hinzufügen von Datensätzen zu has_many: durch Zuordnung in Schienen
class Agents << ActiveRecord::Base belongs_to :customer belongs_to :house end class Customer << ActiveRecord::Base has_many :agents has_many :houses, through: :agents end class House << ActiveRecord::Base has_many :agents has_many :customers, through: :agents end Wie füge ich dem AgentsModell für hinzu Customer? Ist das der beste Weg? Customer.find(1).agents.create(customer_id: 1, house_id: 1) Das obige …

4
Benutzerdefinierte Validierungsnachricht für Schienen 3
Rails hat eine neue Methode zur Validierung von Attributen innerhalb des Modells eingeführt. Wenn ich benutze validates :title, :presence => true Es funktioniert aber, wenn ich versuche, eine benutzerdefinierte Nachricht hinzuzufügen validates :title, :presence => true,:message => "Story title is required" Es wird ein Fehler generiert Unknown validator: 'message'

1
Wie verfolgt Rails, welche Migrationen für eine Datenbank ausgeführt wurden?
Laut Rails doc: http://guides.rubyonrails.org/migrations.html "Active Record verfolgt, welche Migrationen bereits ausgeführt wurden. Sie müssen also nur Ihre Quelle aktualisieren und rake db: migrate ausführen." Wie macht ActiveRecord das eigentlich? Wo speichert Active Record die Daten? Ich vermute, dass dies in der Datenbank selbst gespeichert sein könnte? Irgendwo in einem Tisch. …

7
Schienen Magie erzeugen oder aktualisieren?
Ich habe eine Klasse namens CachedObject, die generische serialisierte Objekte speichert, die nach Schlüssel indiziert sind. Ich möchte, dass diese Klasse eine create_or_updateMethode implementiert . Wenn ein Objekt gefunden wird, wird es aktualisiert, andernfalls wird ein neues erstellt. Gibt es eine Möglichkeit, dies in Rails zu tun, oder muss ich …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.