缩短包括在rails模型中

时间:2016-01-22 07:18:43

标签: ruby-on-rails ruby ruby-on-rails-4 model-view-controller

如何在轨道模型中包含模块时缩短。以下是我的示例代码。

我可以像这样写一行吗?

class TableName < ActiveRecord::Base < ModelRelationConcern::JoinChair

但是我收到了以下错误。

superclass must be a Class (NilClass given)

我认为我所呼唤的是延伸,不确定是否。

感谢您的帮助! :)

1 个答案:

答案 0 :(得分:0)

在评论中添加了我理解的问题。答案是。包含一个模块不等于继承,所以你不能把它写在一行。

您可以在单独的文件中重新打开ActiveRecord::Base,并在那里include您的模块,这样您就不需要在模型中执行此操作。但无论如何你必须把它包含在某个地方。

P.S。当然,您可以按如下方式编写它:

class TableName < ActiveRecord::Base; include ModelRelationConcern::JoinChair end

它名义上是一个在线,但从技术上说它不是,并且这样做也不常见。