ruby-on-rails – Rails 4 – 当前布局的名称?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails 4 – 当前布局的名称?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经为Rails 3找到了很多资源,但Rails 4没有:

为了保持DRY,我们有一个定义一些元标记方法.我想在标题参数中包含布局:

#app/controllers/application_controller.rb
  before_action :set_Meta_tags

  def set_Meta_tags
    title = (layout != "application") ? "#{layout} ::" : false
    set_Meta title: "#{layout} #{setting(:site,:title)}",description: setting(:site,:description)
  end

唯一的问题是我不知道如何在Rails 4中返回当前的布局 – 任何帮助将不胜感激!

解决方法

在Rails 5中,代码是:
controller.send :_layout,["some_string_here"]

我不知道为什么它需要数组中的字符串,但这就是让它适合我的原因.我们的帮助文件如下所示:

def current_layout
  layout = controller.send :_layout,["test"]
  return layout.inspect.split("/").last.gsub(/.haml/,"")
end

猜你在找的Ruby相关文章