我是否滥用Ruby on Rails Layouts

时间:2013-01-31 17:33:22

标签: ruby jquery-ui twitter-bootstrap ruby-on-rails-3.2

编辑:

好的,所以使用我运行的单元格,确实需要脚本编写的rb文件:

helper ApplicationHelper

这已经超出了下面评论中的错误,但现在在我的应用程序助手中,我有一个方法:

  def hr_user_past
    @current_year = current_year
    @hr_user_past ||= Employee.where("username=? and year < ?", session[:hr_user].username, @current_year).order("Year DESC") if session[:hr_user]
    @past_times = @current_year - 2011
    @blart = 'test'
  end

唉,现在找不到current_year这是我的application_controller.rb中的def方法,所以我觉得我的流程都搞砸了,不知道我需要什么才能找到一个好的实体“包括”

来自应用程序控制器的current_year的Def

 class ApplicationController < Actioncontroller::Base

            helper_method :current_year

  ... 
  ...
      def   current_year

         OpenPeriod.maximum :year
      end
 end

我也担心所有这些工作仍然无法解决我从布局中调用twitter引导模式对话框而不是一直淡入数据的问题(我把相同的代码放在视图中,分钟,它工作正确)...但我猜一次只有一个问题......

结束编辑

尽管这里有一个客观的问题。一些背景:

我有一个导航布局,有这个漂亮的登录,主页按钮和其他一些。它工作正常,最近客户想要添加一些更多的功能,即一个智能按钮,在数据填写的情况下动态下降(来自我们使用的旧形式的过去几年)。

因此该应用程序在其他地方使用了twitter bootstrap模式。我刚刚在这里发布了这个问题:

twitter bootstrap modal does not work in rails3 layout?

我在布局中正确使用此模式的问题。然后我开始思考,这种下降的模式通常来自特定的控制器有一些大量的数据,但他们希望随时看到这些数据。这样做的布局方式不是这样,我应该构建一个应用程序助手.rb代码来填充部分并在应用程序的每个页面上包含该部分吗? (看起来像它应该修复我的模态显示奇怪,像不断褪色的问题)。我认为我对轨道上的红宝石的绿色是错误的。我知道它很棒,而且它有很多,这是我在其中完成的第一个项目。所以我不确定这里有什么正确的解决方案,我认为这是一个词汇问题。喜欢我在寻找什么?

表格助手 模板 谐音 等等......这里最适合的是什么?我在编码中意识到有很多方法可以给猫皮肤,但我不知道在哪里问。重读这是主观的。基本上

我有一个家庭控制器,可以在主页上设置内容,结果显示用户需要在任何给定时刻从应用程序的任何页面查看这些数据。试图将它移动到我们的导航布局,它不顺利。这是正确的方法还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

一种方法是使用Cells。从本质上讲,单元格是一个微型控制器,负责获取数据和渲染视图。它不是一个完整的视图,它是一个类似于部分的组件,可以包含在应用程序的其他视图中 - 甚至是布局,当你在每个页面上都有某些东西时这很有用。

一个典型的例子(他们在他们的主页上实现)是购物车的例子 - 它出现在整个应用程序中,但它需要有一些数据集;把它变成一个单元格,将查询和渲染都提取到一个很好分离的MVC单元中。