我有这个gem(active_nutrition)基本上已将一堆表导入我的数据库。 gem带有方法等,可以轻松地从导入的表中获取信息。
但是,我现在想从这些表中查询一些信息,但因为它是一个宝石,我似乎无法查询。
例如,
ClassName.all()
会给我错误
NoMethodError: undefined method 'all' for ActiveNutrition::Objects::ClassName:Class
那么,尽管来自gem的表格是否可以查询?
编辑:
宝石中的类看起来像这样:
module ActiveNutrition
module Models
class ClassName < ActiveRecord::base
此外,我所做的具体查询是Weight.all()
编辑:
我想我明白了。我不认为rails喜欢复合ID,这是Weight
表特别使用的。所有其他表都有自己的ID,所以我可以用它们查询。
因此,所有其他表都显示为模型,但Weight
显示为对象。
答案 0 :(得分:0)
任何扩展ActiveRecord::Base
的类都可以使用all
,find
等方法。
我建议你查看源代码 - the following classes扩展ActiveRecord。那么也许你在查询错误的课程?
答案 1 :(得分:0)
属于此gem的类很可能不会从ActiveRecord扩展。您可以简单地创建自己的模型,然后使用这些模型进行查询