comment faire? il y a une option d'enregistrement actif?Insérer retardé dans les rails
2
A
Répondre
4
Vous pouvez le faire en utilisant des rails patch singe:
class ActiveRecord::Base
def self.insert_low_priority(hash)
keys = hash.keys.map { |v| "`#{v}`" }.join(',')
values = hash.values.map { |v| sanitize(v) }.join(',')
connection.insert_sql("INSERT LOW_PRIORITY INTO `#{table_name}` (#{keys}) VALUES(#{values})")
end
end
Ajouter à initialiseurs, par exemple config/initializers/activerecord_insert_low_priority.rb
L'utilisation est simple: ModelName.insert_low_priority :column1 => 'value'
1
MySQL fournit également "INSERT DELAYED" qui se comporte un peu différemment de "PRIORITÉ FAIBLE" je crois?
Pouvez-vous s'il vous plaît expliquer un peu plus? Votre question peut être trompeuse. –