如何缩短包含导轨模型中的模块时。以下是我的示例代码。缩短包含在导轨模型中
我可以把它写在这样的一行吗?
class TableName < ActiveRecord::Base < ModelRelationConcern::JoinChair
但我收到以下错误。
superclass must be a Class (NilClass given)
我认为我打电话的人是延长,不确定是否是延期。
感谢您的帮助! :)
如何缩短包含导轨模型中的模块时。以下是我的示例代码。缩短包含在导轨模型中
我可以把它写在这样的一行吗?
class TableName < ActiveRecord::Base < ModelRelationConcern::JoinChair
但我收到以下错误。
superclass must be a Class (NilClass given)
我认为我打电话的人是延长,不确定是否是延期。
感谢您的帮助! :)
在评论添加到问题后,我明白了。答案是否。包括一个模块不是平等的继承,所以你不能把它写在一行中。
您可以在单独的文件中重新打开ActiveRecord::Base
,在您的模块中重新打开include
,这样您就不需要在模型中执行此操作。但无论如何,你必须将它包含在某个地方。
P.S.你当然可以如下写:
class TableName < ActiveRecord::Base; include ModelRelationConcern::JoinChair end
它名义上是一个ONELINE,但在技术上它不是,它也不是传统的写左右。
非常感谢。非常感谢@Andrey Deineko。 – Lymuel
@Lymuel,不客气。如果有帮助,请接受答案(左侧的复选标记) –
你知道你真的在做什么吗? :) –
我只是想让这行代码更短,我的意思是1 liner.class TableName
Lymuel