我使用STI模式实现了一个类层次结构
class A
scope :aaa, where([someField]:[someValue])
end
class B < A
end
Run Code Online (Sandbox Code Playgroud)
问题是当我尝试调用类似的东西时:
B.limit(5).aaa
=> SELECT "[table]".* FROM "[table]" WHERE "[table]"."type" IN ('A') AND ([someField] = [someValue]) LIMIT 5
Run Code Online (Sandbox Code Playgroud)
所以我得到了5个类型为A的对象,它满足范围:aaa但我需要对type ="B"的行做同样的事情
是否有任何方法可以使用父级的范围,而无需在STI模式的子级中重新划分它?
提前致谢
EDITED
我刚刚和我的朋友讨论过这件事,他向我展示了一件重要的事情.A不是STI的根类.实际上整个层次结构看起来像
class O < ActiveRecord::Base
end
class A < O
scope ..... .....
end
class B < A
end
Run Code Online (Sandbox Code Playgroud)
也许原因在于层次结构本身?...
ES6新手来了。也许这是一个简单的问题,但还没有找到任何有用的信息。我的目录中有modals.js文件和文件夹。modalsactions
如果文件或文件夹具有相同的名称,我如何告诉 javascript 我是否要导入它们?
我的期望是:
import {...} from './actions/modals'
Run Code Online (Sandbox Code Playgroud)
可以被视为modals.js文件或modals/index.js. 是否有任何广泛传播的解决方案适用于任何捆绑器,这将保证我到底需要什么?
我知道我可以尝试使用“.js”扩展名,例如:
import {...} from './actions/modals.js'
Run Code Online (Sandbox Code Playgroud)
但我的研究表明并非所有构建器都支持文件扩展名。
我非常感谢您对我的 ES6 学习的帮助