optional local variables in rails partial templates: how do I get out of the (defined? foo) mess?

前端 未结 12 1976
没有蜡笔的小新
没有蜡笔的小新 2020-12-04 04:41

I\'ve been a bad kid and used the following syntax in my partial templates to set default values for local variables if a value wasn\'t explicitly defined in the :locals has

12条回答
  •  有刺的猬
    2020-12-04 05:34

    I know it's an old thread but here's my small contribution: i would use local_assigns[:foo].presence in a conditional inside the partial. Then i set foo only when needed in the render call:

    <%= render 'path/to/my_partial', always_present_local_var: "bar", foo: "baz" %>
    

    Have a look at te official Rails guide here. Valid from RoR 3.1.0.

提交回复
热议问题