Rails: восстановление объектов ActiveRecord из массива JSON

У меня есть массив JSON с объектами ActiveRecord. Эти объекты можно восстановить с помощью метода from_json, который есть у каждого объекта AR. Однако с from_json возможно восстановить только один объект.

Чтобы обработать массив, я, конечно, мог бы просто извлечь подстроки из массива JSON и создать каждый объект из его собственной подстроки в цикле или около того. Однако мне интересно, если есть лучший способ сделать это, без участия строки.

11.12.2008 10:14:40
1 ОТВЕТ
РЕШЕНИЕ

я бы сделал

sudo gem install json

После этого просто

require "json"

и делать

JSON.load(array_of_ar_json_representation)

или

JSON.parse(array_of_ar_json_representation)

что подходит вам лучше.

Оба эти метода возвращают структуру данных Ruby, которая соответствует структуре json. Итак, если у вас есть массив объектов json, после JSON.load или JSON.parse вы получите массив хэшей Ruby. У вас не должно быть проблем с манипулированием такой структурой.

6
11.12.2008 11:55:56
Спасибо за ответ! Я думаю, что оригинальный объект AR может быть воспроизведен путем передачи хеша его конструктору, поэтому нет необходимости использовать from_json ..
Nils 12.12.2008 14:46:14