Sto cercando di inserire dati nel mio database usando ActiveRecord.find_or_initialize_by non funziona con 2 colonne
Quando utilizzo pdays = MyModel.new
per l'inizializzazione piuttosto che sotto find_or_initialize_by
, lo script funziona correttamente. Ma funziona SOLO una volta. Ho bisogno di questo per eseguire ogni giorno per eseguire aggiornamenti. Quando provo a eseguire lo script la seconda volta con pdays = MyModel.new
, non viene generato alcun vincolo di chiave duplicato.
Quindi io sto cercando la find_or_initialize_by sotto con 2 argomenti, ma che dà un errore:
undefined method `find_or_initialize_by'
2 colonne insieme rendono il record unico:
vertica_traffic.each do |vdays|
pdays = MyModel.find_or_initialize_by([:local_dt], vdays[:community_id])
pdays[:local_date] = vdays_traffic[:local_d]
pdays[:community_id] = vdays_traffic[:community_id]
pdays[:uniquesters] = vdays_traffic[:uniques]
pdays.save
end
stai usando le guide 3.2.x? – jvnill