JSON応答を介してdynatreeにノードを追加しようとしていますが、質問はより一般的です(dynatree固有のものではありません):ビューにjson.js.erb
を正しくレンダリングする方法がわかりません.html.erb
#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'})
ノードTitle
は私が期待するようにレンダリングされます(タイトルが追加された名前のノード<div id="places_tree"></div>
)...
@places_json
しかし、動的にレンダリングする必要があります
事前に感謝