gpt4 book ai didi

ruby-on-rails - Rails 助手中的动态方法调用

转载 作者:行者123 更新时间:2023-12-03 07:49:36 25 4
gpt4 key购买 nike

我有一个辅助模块,其中包含一系列采用以下格式的方法调用

def link_to_details_for_facebook(param1, param2)
def link_to_details_for_twitter(param1, param2)
def link_to_content_for_facebook(param1, param2)
def link_to_content_for_twitter(param1, param2)

有没有一种方法可以调用一个方法,例如,这样我就可以动态调用正确的辅助方法?

def link_to_type_for_social_network(param1, param2, type="details", social_network="facebook")   
method("#{type}_url_to_#{social_network}(param1, param2)".to_sym).call
end

这只是给了我错误

undefined method details_to_facebook(param1, param2)' for class ActionView::Base'

最佳答案

我不熟悉 method() 方法,但我自己会使用 send() 。由于您定义的方法名称以“link_to...”开头,因此您需要确保将其添加到方法调用中。我会选择这样的东西:

def link_to_type_for_social_network(param1, param2, type="details", social_network="facebook")
send("link_to_#{type}_for_#{social_network}", param1, param2)
end

关于ruby-on-rails - Rails 助手中的动态方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3285836/

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