Wenn das Ziel darin besteht, einfach einen Datensatz ohne Rückrufe oder Überprüfungen einzufügen oder zu aktualisieren, und Sie dies tun möchten, ohne auf zusätzliche Edelsteine zurückzugreifen, bedingte Überprüfungen hinzuzufügen, RAW SQL zu verwenden oder in irgendeiner Weise mit Ihrem Beendigungscode zu fummeln, kann dies der Fall sein Es ist möglich, ein "Schattenobjekt" zu verwenden, das auf Ihre vorhandene DB-Tabelle verweist. Wie so:
class ImportedUser < ActiveRecord::Base
self.table_name = 'users'
end
Dies funktioniert mit jeder Version von Rails, ist threadsicher und eliminiert alle Validierungen und Rückrufe vollständig, ohne Änderungen an Ihrem vorhandenen Code vorzunehmen. Denken Sie daran, Ihre neue Klasse zum Einfügen des Objekts zu verwenden, z.
ImportedUser.new( person_attributes )
set_callback(:create)
? Ich hatte den Eindruck, dass esskip_callback
deaktiviert wird, bis es wieder aktiviert wird.