неявное преобразование StringIO в String (TypeError) - ruby - PullRequest
0 голосов
/ 01 января 2019

У меня есть скрипт с именем import.rb, который будет импортировать контент json из URL в каталог черновиков в jekyll.Вот мой код

1 Ответ

0 голосов
/ 01 января 2019

Изменить это:

data = JSON.parse(open('https://script.google.com/macros/s/AKfycbyHFt1Yz96q91-D6eP4uWtRCcF_lzG2WM-sjrpZIr3s02HrICBQ/exec'))

На это:

data = JSON.parse(open('https://script.google.com/macros/s/AKfycbyHFt1Yz96q91-D6eP4uWtRCcF_lzG2WM-sjrpZIr3s02HrICBQ/exec').string)

Метод .string Returns underlying String object.

И покаизмените это:

array && !array.empty?

На это:

array&.any?

&. является оператором безопасной навигации , и это упрощает процесспроверка nil и вызов метода для объекта.И с точки зрения стиля, предпочтительно вызывать array.any? вместо !array.empty?.

Наконец, при использовании FileUtils.mkdir_p вам не нужно включать условие охраны unless Dir.exist?(drafts_dir).Его можно безопасно вызывать, не беспокоясь о том, что он удалит или перезапишет существующий каталог.

...