【发布时间】:2020-09-29 12:30:28
【问题描述】:
我有一个 webhook 接收器服务,在响应中我需要发送特定的 json。我想符合 DRY 政策,所以我不想在 22 个地方重复相同的代码。预期的 json 应如下所示:
render json: {
"fulfillmentMessages": [
{
"text": {
"text": [
"here is the text depends on action",
],
},
},
],
}
示例 3 操作如下:
def create
action_name = params[:webhook][:queryResult][:intent][:displayName]
case action_name
when 'get-calendar'
render json: {
"fulfillmentMessages": [
{
"text": {
"text": [
"show user's calendar",
],
},
},
],
}
when 'get-room'
render json: {
"fulfillmentMessages": [
{
"text": {
"text": [
'show available meeting rooms',
],
},
},
],
}
when 'login'
render json: {
"fulfillmentMessages": [
{
"text": {
"text": [
'login user',
],
},
},
],
}
end
end
就像我写的那样,我在这里有 21 个动作,唯一改变的是: “文本”: [ '文本取决于行动', ], 在json的情况下是否可以不重复相同的代码?
【问题讨论】:
标签: ruby-on-rails json ruby