gpt4 book ai didi

ruby-on-rails - 如何在 ActiveAdmin 中调用普通 Controller 方法?

转载 作者:行者123 更新时间:2023-12-04 17:00:47 25 4
gpt4 key购买 nike

我将 ActiveAdmin 用于 Products模型。

在我的 ProductsController我在 update 做一些特殊的魔法从 ActiveAdmin 更新产品时,我也想使用这种方法。为了DRY,我想调用ProductsController.update来自 ActiveAdmin 的方法。我试过:

controller do
def update
ProductsController.update
end
end

但我得到了一个 NoMethodError in Admin::PoisController#update .所以显然 ActiveAdmin 的命名空间仍然适用。我如何引用该命名空间之外的 Controller ?

最佳答案

你肯定还在命名空间中。叫它::ProductsController得到一个全局的。但你还没有完成。

Rails 中的 Controller 操作不是类方法,而是实例方法。您必须实例化 Controller 才能调用操作。你可以试试,但我不认为它会奏效。

我会从原始 ProductsController 中提取逻辑因此可以从两个 Controller 轻松调用它。

关于ruby-on-rails - 如何在 ActiveAdmin 中调用普通 Controller 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8173600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com