我尝试编写JSON文件。每次我的应用程序用户在rails中创建新患者时。我当前方法的问题是,每次调用该方法时,新患者都会覆盖我的JSON文件。我希望能够连续添加到JSON文件而不覆盖现有内容。任何帮助,将不胜感激!
writer.rb
const date = moment(YOUR_DATE)
return (moment().diff(date, 'days') >= 2) ? date.fromNow() : date.calendar().split(' ')[0]
Patients_controller.rb
def self.writes(patient)
events_json = []
File.open("public/events.json","w") do |f|
f.write(patient.to_json)
end
end
end
答案 0 :(得分:1)
您需要将打开模式指定为“ a”,该模式将附加到文件末尾,如下所示:http://ruby-doc.org/core-2.6.2/IO.html#method-c-new
这意味着您可以将代码更改为此:
def self.writes(patient)
events_json = []
File.open("public/events.json","a") do |f|
f.write(patient.to_json)
end
end
end
它应该可以工作。