Rails如何将解析数据从sql视图传递给模型?

时间:2016-07-20 14:05:03

标签: ruby-on-rails ruby ruby-on-rails-5 database-view

我遵循post中关于“为SQL视图添加Rake任务到Rails项目”的优秀Frank Rietta。我喜欢他对rails中数据库视图及其干法的看法。

我能够rake db:views并且我的视图已创建,但我无法获取模型中的信息,这是我的models/reports/revenue.rb

class Report::Revenue < ApplicationRecord
  self.table_name = 'report_revenues'
end

我更改了扩展名,因为我使用的是Rails 5.0.0

如果我执行rails console --sandbox并执行Report::Revenue,我会得到以下内容

2.3.1 :004 > Report::Revenue
NameError: uninitialized constant Report

我不确定我错过了什么

1 个答案:

答案 0 :(得分:0)

Rails期望模块名称和文件夹名称匹配。请注意,您混合了单数和复数。

说:你必须将你的模型改为:

class Reports::Revenue < ApplicationRecord
  self.table_name = 'report_revenues'
end

将您的模型移动到名为models/report/revenue.rb的文件夹中。