ruby-on-rails – 如何基于params [:controller]动态访问实例变
发布时间:2020-12-17 03:59:45 所属栏目:百科 来源:网络整理
导读:我有一个部分应该根据params [:controller]变量访问各种控制器的实例变量.使用singularize和downcase,我定义实例变量的名称,按惯例,它是控制器名称的单数. 但我只得到一个字符串.如何调用名为string的实例变量? 例如,我有控制器文章,所以我做了以下事情:
我有一个部分应该根据params [:controller]变量访问各种控制器的实例变量.使用singularize和downcase,我定义实例变量的名称,按惯例,它是控制器名称的单数.
但我只得到一个字符串.如何调用名为string的实例变量? 例如,我有控制器文章,所以我做了以下事情: params[:controller].singularize.downcase # => "article" 现在我想访问@article.我怎样才能做到这一点? 解决方法
ruby中有一个instance_variable_get()方法.所以尝试这样的事情:
var_name = params[:controller].singularize.downcase # article instance_variable_get("@#{var_name}") P.S:记住你应该在适当的上下文中使用instance_variable_get. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |