Ruby 如何重用选项哈希
我正在反复使用Twilio Say动词,并希望重构我的代码。现在看起来有点像这样Ruby 如何重用选项哈希,ruby,twilio,Ruby,Twilio,我正在反复使用Twilio Say动词,并希望重构我的代码。现在看起来有点像这样 def sample render text: (Twilio::TwiML::Response.new do |r| r.Say 'Welcome to ABC Residence', voice: 'alice', language: 'en-GB' r.Say 'Thank you for visiting ABC Residence.', voice:'alice',
def sample
render text: (Twilio::TwiML::Response.new do |r|
r.Say 'Welcome to ABC Residence', voice: 'alice', language: 'en-GB'
r.Say 'Thank you for visiting ABC Residence.', voice:'alice', language: 'en-GB'
r.Hangup
end).text
end
请注意,我使用了两次
语音:“alice”和语言:“en-GB”
。如何将它们放入一个变量中,以便反复使用?将它们放入散列并使用它:
def sample
props = {voice: 'alice', language: 'en-GB'}
render text: (Twilio::TwiML::Response.new do |r|
r.Say 'Welcome to ABC Residence', props
r.Say 'Thank you for visiting ABC Residence.', props
r.Hangup
end).text
end
将它们放入散列中并使用它:
def sample
props = {voice: 'alice', language: 'en-GB'}
render text: (Twilio::TwiML::Response.new do |r|
r.Say 'Welcome to ABC Residence', props
r.Say 'Thank you for visiting ABC Residence.', props
r.Hangup
end).text
end
我认为你的道具散列不可用,因为它不在示例方法中。要么把它移到里面,要么把它转换成一个返回散列的方法。哦,我的错。现在已修复。我认为您的道具哈希将不可用,因为它不在示例方法中。要么把它移到里面,要么把它转换成一个返回散列的方法。哦,我的错。现在修好了。