我有這個show.json.rabl
爲控制器的顯示動作渲染出我的Rails應用程序中的一些JSON,我認爲edit
行動的JSON響應沒有不同於我的顯示一個,所以我想知道是否有對0123'操作使用show.json.rabl
的方法。rabl重用模板
我知道我可以在我的edit.json.rabl
使用「延長users/show
,但如果我想獲得完全擺脫edit.json.rabl
並在指定這一行動的JSON響應應該使用show動作的Rabl的模板控制線的東西。能這樣做嗎?
謝謝
我有這個show.json.rabl
爲控制器的顯示動作渲染出我的Rails應用程序中的一些JSON,我認爲edit
行動的JSON響應沒有不同於我的顯示一個,所以我想知道是否有對0123'操作使用show.json.rabl
的方法。rabl重用模板
我知道我可以在我的edit.json.rabl
使用「延長users/show
,但如果我想獲得完全擺脫edit.json.rabl
並在指定這一行動的JSON響應應該使用show動作的Rabl的模板控制線的東西。能這樣做嗎?
謝謝
我不知道是否有更好的方法,但你可以直接與Rabl的渲染JSON
render :inline => Rabl::Renderer.json(@user, 'users/show')
如果您正在使用Rabl的> =「0.11.6」,你就必須提供view_path參數(即如果它尚未在全球範圍內的rabl.rb配置文件中設置),像這樣:
render :inline => Rabl::Renderer.json(@user, 'users/show', :view_path => 'app/views')
否則你會得到以下錯誤:
RuntimeError (Cannot find rabl template 'users/show' within registered ([]) view paths!):
你可以嘗試在你的控制器的'def edit'中添加'render:show'嗎? –