我在查看视图中按名称调用局部变量时遇到问题。我使用locals从其他视图渲染这部分代码:
{ url: @event_url, size: 1, style: 1 }
- style_default = { col_md: 12, col_sm: 12}
- style_1 = { col_md: 3, col_sm: 4}
- style_2 = { ... }
我想调用变量style_X
,具体取决于渲染期间给出的局部变量style
。我尝试了三种方法来解决这个问题:
eval
instance_variable_get
if
条件但我认为它们还不够好。是否有任何可以通过名称调用局部变量的解决方案或方法?
答案 0 :(得分:1)
Binding#local_variable_get
用于获取局部变量的值。
答案 1 :(得分:0)
使用此本地人:{ url: @event_url, size: 1, style: "style_#{style}" }
。
或者使用类似send(:style)