加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – ruby?? on rails应用程序在辅助程序与控制器之

发布时间:2020-12-17 03:45:32 所属栏目:百科 来源:网络整理
导读:我有几个变量,我希望所有控制器访问.所以我在application_controller.rb中定义了它们: before_filter :initialize_vars def initialize_vars @siteTitle = "my title" @companyName = "company" end 没有问题. 我想用徽标做类似的事情,所以我创建了另一个用
我有几个变量,我希望所有控制器访问.所以我在application_controller.rb中定义了它们:

before_filter :initialize_vars

  def initialize_vars
    @siteTitle = "my title"
    @companyName = "company"    
  end

没有问题.
我想用徽标做类似的事情,所以我创建了另一个用before_filter调用的方法.

def logo
    image_tag("Logo.jpg",:alt => "Logo")
  end

徽标img的一个实例应链接到站点根目录,因此我调用它:

<%=h link_to logo,root_path %>

但它在我的布局中不起作用!当我将我的logo方法添加到application_helper.rb时,一切都很完美. hhmmm.

什么/适合这些东西的适当位置?我的意思是因为我能够使它工作不正确!

我应该在application_controller中定义我的实例变量(我将其视为全局变量)和我帮助器中的logo方法,就像我已经完成的那样?我觉得我在这里缺少一些基本的理解,为什么他们需要去不同的地方.我不确定我是否正在调用“徽标”方法或者我正在使用它.我将使用我如何调用以及如何编写徽标方法,因为我觉得这两种方法都应该放在application_controller中.

想法?

谢谢!

解决方法

与渲染视图相关的函数放在辅助文件中.
它们通常生成HTML内容.如果在许多地方在应用程序中使用辅助方法,请将它们放在application_helper.rb中,否则必须将它们放在相应的帮助文件中.

由于您将在许多控制器中访问实例变量,因此可以像应用程序控制器一样在初始化它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读