我在MySQL中创建了一个视图,它对应于我正在生成的一些报告(按月分组的总和,以及累计的年份).视图有3列(年,月,总).视图/表名称为"report_monthly".我知道我可以通过connection().select_all(...)使用原始sql,但我想为这个表创建一个ActiveRecord.
这是我在名为"report_monthly.rb"的文件中的模型:
class MonthlyReport < ActiveRecord::Base # I assume that setting the table name circumvents the pluralized file name convention set_table_name "report_monthly" end
该文件放在标准的rails结构中:
app controllers helpers models report_monthly.rb views
现在,当我使用RoR控制台(脚本/控制台)时,我甚至看不到类更少列出所有行
>> MonthlyReport NameError: uninitialized constant MonthlyReport
我所有的其他模型都运行良好,但它们遵循"singular.rb"的惯例 - >类Singluar - >表格Plural
更新:这与视图是不可变的这一事实有什么关系吗?无法插入/更新?
版本:
Ruby 1.8.7,Rails 2.3.2,MySQL 5.0.75
文件名和类名必须相同,因此需要调用您的文件monthly_report.rb
.