gpt4 book ai didi

ruby-on-rails - 单独的 Rails 辅助方法

转载 作者:数据小太阳 更新时间:2023-10-29 07:31:04 25 4
gpt4 key购买 nike

我有几个 Controller 和相关的辅助模块。我得到了一些辅助方法,它们在不同模块中的行为应该相似,这意味着:

module UserHelper
..
def destroy(user)
link_to t(:destroy_user), user ...
end
end

module PhotosHelper
..
def destroy(photo)
link_to t(:destroy_photo), photo ...
end
end

我不知道(意识到)默认情况下包含所有这些帮助程序模块,(我猜这没关系,)而且无论您从哪个 View 调用帮助程序方法都没有关系。

将其余的助手与我当前的 Controller / View 分开的最佳方法是什么,以便在 controller_name == 'photos' 时,只有 PhotosApplication 使用了助手?

助手的概念我不是很清楚。如果所有助手都已混合,为什么不只使用一个 ApplicationController 呢?仅仅是为了“逻辑分离”吗?

我的意思是,当然,有许多解决方法。但只有我一个人,还是真的觉得没有理由在全局范围内包括所有帮助者?

最佳答案

如果您在 ApplicationController 类中调用 clear_helpers,它们将不会在不同的帮助类之间共享

clear_helpers()

Clears up all existing helpers in this class, only keeping the helper with the same name as this class.

引用:http://api.rubyonrails.org/classes/AbstractController/Helpers/ClassMethods.html#method-i-clear_helpers

关于ruby-on-rails - 单独的 Rails 辅助方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5757191/

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