我希望Ruby on Rails中的JSON输出"漂亮"或格式良好.
现在,我打电话to_json,我的JSON全部在一条线上.有时,如果JSON输出流中存在问题,则很难看到.
有没有办法配置或方法使我的JSON在Rails中"漂亮"或格式良好?
假设您在用户控制器中,并且想要获得show请求的json响应,那么如果您可以在views/users/dir中创建一个名为show.json的文件并且在您的用户#show之后创建一个文件会很好动作完成后,呈现文件.
目前你需要做一些事情:
def show
@user = User.find( params[:id] )
respond_to do |format|
format.html
format.json{
render :json => @user.to_json
}
end
end
Run Code Online (Sandbox Code Playgroud)
但是如果你可以创建一个自动渲染的show.json文件就好了:
def show
@user = User.find( params[:id] )
respond_to do |format|
format.html
format.json
end
end
Run Code Online (Sandbox Code Playgroud)
这样可以减轻我的痛苦,并且当我在控制器中渲染我的json时,它会消除我得到的那种可怕的肮脏感觉
我创建了具有属性的厨师食谱.然后我尝试将代码提升到节点并在addidition中传递其他属性和/或覆盖默认值.是否可以打印属性树以查看哪些属性被加载,哪些属性被覆盖?
1)我有一个数据包如下:
"zookeeper":{
"server1":"111.111.111.111",
"server2":"222.222.222.222"
},
Run Code Online (Sandbox Code Playgroud)
2)在我的食谱中,我得到哈希如下.
data_bag("mydb")
db = data_bag_item("mydb", "rtb")
ZOOKEEPER = db['zookeeper']
Run Code Online (Sandbox Code Playgroud)
3)同样在我的食谱中我有一个模板如下:
template "/etc/zookeeper/conf/zoo.cfg" do
path "/etc/zookeeper/conf/"
source "zoo.cfg.erb"
owner "root"
group "root"
mode "0644"
variables :zookeeper => #{ZOOKEEPER}
end
Run Code Online (Sandbox Code Playgroud)
4)我需要让我的模板看起来像这样
server.1=111.111.111.111:2888:3888
server.2=222.222.222.222:2888:3888
Run Code Online (Sandbox Code Playgroud)
我的问题是这个.如何将哈希传递给模板,以便循环哈希并创建temlplate?我不是一个强大的红宝石编码器.
例如:
count = 1
for server, ipaddress in zookeeper:
server.count=ipaddress:2888:3888
count = count + 1
Run Code Online (Sandbox Code Playgroud)