将变量设置为三元
我正在尝试在视图中渲染部分内容。当调用渲染时,我正确地传递了 :locals 。但是,当尝试将分部视图中的局部变量设置为三元时,语句的“else”逻辑不会被传递。
@local_var = pass_var ? pass_var : ''
||= 运算符在这种情况下无法实现我想要实现的目标。
@local_var = 'wrapping_text_open' + pass_var + 'wrapping_text_close' ||= ''
I'm trying to render a partial within a view. When calling the render I'm passing :locals correctly. However, when trying to set the local variable in the partial view to a ternary, the 'else' logic of the statement does not get passed.
@local_var = passed_var ? passed_var : ''
The ||= operator will not work in this instance for what I'm trying to achieve.
@local_var = 'wrapping_text_open' + passed_var + 'wrapping_text_close' ||= ''
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我从不使用这个,但你可以这样做
为什么使用实例变量?
I never use this, but you could do
Why use an instance variable?