Я пытаюсь передать некоторые данные в Javascript на мой взгляд.Мне нужны только определенные атрибуты объектов в массиве.
Похоже, что гем json не поддерживает опцию :only
.Я пытался использовать ActiveSupport :: JSON
<script>
test1=<%=raw ActiveSupport::JSON.encode(@sectionDatas.values, :only => [ :left, :width ])%>;
</script>
, но это игнорирует :only
и печатает весь объект.
Тогда я подумал, что буду умнее и возьму метод render
с контроллера:
test2=<%=raw render :json => @sections.as_json(:only => [:left, :width])%>
но я получаю ошибки Nil: Nilclass.
Я также попытался вставить это в мою модель и запустить to_json:
include ActiveModel::Serialization::JSON
def attributes
@attributes ||= {'left' => 0, 'width'=>0}
end
Сноваэто игнорирует метод атрибутов и сериализует весь объект.
Конечно, это должно быть просто.Чего мне не хватает?