0
Ich habe einen beliebigen Cronjob, der JSON-Daten von einer externen URL erhält und in meiner Datenbank speichert. Ich suche nach einer Option, um nur neue Datensätze hinzuzufügen oder zu aktualisieren, die seit der letzten Rake-Aufgabe geändert wurden. Im Moment erstellt es nur über die alten Daten.Rails und JSON-Daten, überschreiben nur, wenn aktualisiert oder neu
Rake Aufgabe
namespace :properties do
desc "Save Properties from API to database"
task upload: :environment do
json = JSON.parse('{"Property":[{"id":"1","street":"123 Fake Street","town":"Someplace","postcode":"000000"}]}')
json['Property'].each do |data|
property = Property.create
property.id = data['id']
property.street = data['street']
property.town = data['town']
property.postcode = data['postcode']
property.save
end
end
end
Sie können find_or_create_by - https://apidock.com/rails/v4.0.2/ActiveRecord/Relation/find_or_create_by – Sajin
Dank Sajin verwenden. Es führt mich in die richtige Richtung. – DollarChills