ruby-on-rails - 这是做仪表板最 'Rails'的方法吗?

标签 ruby-on-rails

我已经为我正在开发的网站构建了一个管理面板,一切都非常出色。现在需要一个充当“仪表板”的首页。随着时间的推移,它将显示代表应用程序的各种模型和部分的不同图表。它还会显示各种项目的较小列表(需要调用的客户等)。我有一个仪表板正在工作,但我只是想知道是否有更好的方法在 Rails 中执行此操作。我基本上只有一个仪表板 Controller :

class DashboardController < ApplicationController
  def show
    @statistics = {}
    @statistics[:leads] = Lead.this_month.count
    @statistics[:leads_by_day] = Lead.date_count
    @statistics[:called_this_month] = Customer.called_this_month.count
  end
end

我不想使用任何 gem,因为这需要大量的配置,并且需要以某种方式看起来

最佳答案

这可能会导致 View 层中出现大量代码和条件,并且可能难以测试。

提取所有代码

您应该将所有代码提取到一个或多个类中。优点是,您可以使用多种单行方法获得真正干净的代码,并且可以与 Rails 隔离地测试它们,这使您的测试速度快如闪电。 Fast Rails Tests by Corey Haines

对于如何做到这一点存在不同的意见。

  • 将这些文件放入 lib 目录并在需要时使用它们。
  • 指定演示者

    有一个很棒的 railscast 关于它(需要专业订阅)

关于ruby-on-rails - 这是做仪表板最 'Rails'的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14397982/

相关文章:

ruby-on-rails - [X,Y,Z].each {|m| 有什么区别包括 m} 并包括 X、Y、Z?

ruby-on-rails - Ruby - 我需要将字符串转换为时间戳

javascript - turbolinks :load event not firing on remote true call, rails ,jquery

ruby-on-rails - 在 rails 中解析日期

ruby-on-rails - Ruby 企业版与 Ruby 1.9

ruby-on-rails - Rails 在 lib/tasks 文件夹中调用任务

ruby-on-rails - rails : fields_for only one object

javascript - Rails Zeitwerk `Wrong constant name` 用于 JavaScript

ruby-on-rails - 我如何在 ReactJS 中使用嵌套表单?

ruby-on-rails - Ruby on Rails SPARQL 客户端