0

我关注了Frank Rietta关于“将 SQL 视图的 Rake 任务添加到 Rails 项目”的精彩帖子。我喜欢他关于 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

我不确定我错过了什么

4

1 回答 1

0

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

也就是说:您必须将模型更改为:

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

或者将您的模型移动到一个名为models/report/revenue.rb.

于 2016-07-20T14:34:00.897 回答