0

我有一个模型Widget

include SomeConcern

SomeConcern extends Activesupport::Concern 没关系。我可以调用SomeConcern像 to_liquid 中定义的方法,一切都很好。

一旦我liquid_methods :foobarWidget课堂上调用,to_liquid我关心的方法就会被液体的默认方法覆盖。

我怎样才能让我的关注版本接管优先权?

4

1 回答 1

0

调用模型define_method :to_liquid时的液体用途。liquid_methods

你希望你的 mixin 优先,你必须在调用之后包含它。

您可以做的另一件事是拥有一个常规模块(始终优于ActiveSupport::Concern)并用于prepend将其放在祖先链的前面。

于 2014-05-16T02:18:40.410 回答