【发布时间】:2017-05-06 23:15:38
【问题描述】:
因此,我的应用程序的工作方式是用户输入一条消息,以及将消息发送到的电话号码。该应用程序使用 Twilio gem 发送消息。我试图弄清楚如何将从用户输入存储的变量调用到我的 twilio 代码中。
messages_controller.rb
class MessagesController < ApplicationController
before_action :set_message, only: [:show, :edit, :update, :destroy]
def index
@message = Message.all
end
def show
end
def new
@message = Message.new
end
def edit
end
def create
@message = Message.create(message_params)
@message.send_sms(message_params)
if @message.save
redirect_to @message
else
flash[:alert] = "Contact not send message!"
end
end
def update
if @message.update(message_params)
redirect_to @message
else
render :edit
end
end
def destroy
@message.destroy
redirect_to messages_url
end
private
# Use callbacks to share common setup or constraints between actions.
def set_message
@message = Message.find(params[:id])
end
# Never trust parameters from the scary internet, only allowset_message the white list through.
def message_params
params.require(:message).permit(:number, :text)
end
end
twilio 代码
require 'twilio-ruby'
def send_sms(text)
account_sid = ENV["TWILIO_SID"]
auth_token = ENV["TWILIO_TOKEN"]
@client = Twilio::REST::Client.new account_sid, auth_token
message = @client.account.messages.create(:body => @message.text,
:to => @message.number,
:from => ENV["FROM"])
rescue Twilio::REST::RequestError => e
end
【问题讨论】:
标签: ruby-on-rails ruby controller twilio