Я пытаюсь добавить узел в dynatree через json-ответ, но вопрос более общий (не специфичный для dynatree): я не могу получить, как правильно отобразить json с .js.erb
в .html.erb
view
#ERB view
...
<div id="places_tree"></div>
...
# controller
def add_places
@places_json=Place.all.as_json
respond_to do |format|
format.js { render layout: false } # execute add_places.js.erb
end
end
#add_places.js.erb
var node = $("#places_tree").dynatree("getRoot");
node.addChild(<%= @places_json %>); <=== node not renders into dynatree container '<div id="places_tree"></div>' here
если я изменю его в последней строке выше на чистый json
node.addChild({"title": 'Title'})
node Title
отображается как я ожидаю (узел с именем Title добавляет к <div id="places_tree"></div>
)...
но мне нужно визуализировать @places_json
динамически
спасибо заранее
было слишком легко получить его быстро
пришлось сделать глубокую отладку, но я, наконец, обнаружил "проблему",
1) Я изменил .as_json
на .to_json
в методе контроллера
2) У меня есть .html_safe
строка псевдо-json с простым .html_safe
в add_places.js.erb
3) наконец, я сделал длинный звук "pffffff", понимая, насколько просто он