我使用的是Ruby on rails.
我有一个控制器,它向API发出后续请求,该API需要插入一些值的大型数组参数.
我正在使用如下所示的方法生成此参数:
def generate_params(search)
[
{
script_score: {
query: {
neural: {
passage_embedding: {
query_text: search,
k: 100
}
}
},
script: {
source: '_score * 1.5'
}
}
},
{
script_score: {
query: {
multi_match: {
query: search,
fields: %w[field_a field_b field_c field_d]
}
},
script: {
source: '_score * 1.7'
}
}
}
]
end
search
参数被插入到从该方法返回的数组中.
我的问题是:在Ruby/Ruby on rails中为这样的大型对象定义模板的最佳实践是什么?
正如您从示例中看到的,其中95%是静态模板语法,只有2个值由变量填充.
我希望将方法大小减少到尽可能小,并且想知道是否有某种方法可以将此数组定义为方法之外的某个模板?具体来说,Ruby中的最佳实践方法是什么?