首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用Rails上的自定义布局访问视图上的实例变量

无法使用Rails上的自定义布局访问视图上的实例变量
EN

Stack Overflow用户
提问于 2019-08-24 03:22:17
回答 1查看 331关注 0票数 1

我有一个带有自定义布局的控制器方法,并且我不能访问相应视图上的实例变量。

当我改回默认的应用程序布局时。我可以访问实例变量。

pages_controller.rb

代码语言:javascript
复制
def payment_summary
    render layout: "content"
    if session[:new_company_id].present?
      @company = Company.find(session[:new_company_id])
    end
    @var = "this is test"
  end

payment_summary.html.erb

代码语言:javascript
复制
  <div class="row">
    <div class="col-sm">
      Company Info
      <div class="card">
        <%= @company.name %>
        <%= @var %>
      </div>
    </div>
    <div class="col-sm">
      Due Today
    </div>
  </div>

布局/content.html.erb

代码语言:javascript
复制
<!DOCTYPE html>
<html>
  <head>
   
    <%= csrf_meta_tags %>
    <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
    <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
    <!-- Font Awesome 5 Free -->
    <script src="https://kit.fontawesome.com/9da10782cc.js"></script>
    <!-- for js cookie use -->
    <script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script>

  </head>

  <body class="content-pages <%= body_class %>">
    <%= yield %>
  </body>
</html>

当我移除,渲染布局内容时,一切工作正常。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-24 03:28:09

这种情况下的render是“顺序相关的”。将其下移,作为操作体中的最后一条语句:

代码语言:javascript
复制
def payment_summary
  if session[:new_company_id].present?
    @company = Company.find(session[:new_company_id])
  end
  @var = "this is test"
  render layout: "content"
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57631941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档