我的Middleman项目中有一个JSON数据文件,其中有一个对象,其中包含一个网站的5个部分的信息,我们正在为新项目构建原型。以下是该文件的一部分:
"industries": {
"Insulation": {
"url": "insulation",
"color": "#B48126"
},
"Roofing": {
"url": "roofing",
"color": "#52bd4a"
}, ...
我想根据当前页面从该对象中提取属性。
例如,如果我在绝缘部分的页面上,我想从该文件中获取用于绝缘的高亮颜色并将其用作原型的一部分,以便我们可以为客户端尝试不同的颜色。
在每个.erb模板的顶部,我可以非常轻松地将此页面数据变量用于表示行业:
;;;
"product": "Commerical Insulation",
"division": "insulation"
;;;
然后在模板的下方,使用以下内容:
<img class="img-responsive center-block"
src="<%= lorem.image('1140x100',
:text => current_page.data.product + ' image',
:color => data.lists.industries.{current_page.data.division}.color) %>" />
我知道{current_page.data.division}
不正确(抛出语法错误,意外的tLBRACE )。
我是Ruby和ERB的新手,所以如果有更好的方法来解决这个问题,我愿意接受建议。
答案 0 :(得分:0)
你试过data.lists.industries[current_page.data.division].color
吗?