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