我已經將我的生產軌應用程序生活了幾個月,現在沒有任何問題。我沒有作最近(而不是幾天)有大的變化,然後今天早上,空氣制動拋出一堆錯誤的特定回調,我說:Rails在不改變任何內容的情況下拋出一個丟失的模板錯誤
ActionView::MissingTemplate (Missing template calls/receive_call, application/receive_call
我沒有改變最近的觀點或路線中的任何事情,可能是什麼原因造成的?這是我收到的呼叫方法:前
def receive_call
to_number = params[:To] == '+1' ? params[:Called].slice!(2..12) : params[:To].slice!(2..12)
from_number = params[:From] == '+1' ? params[:Caller].slice!(2..12) : params[:From].slice!(2..12)
company = PhoneNumber.find_by(number: to_number).company
customer = company.customers.find_or_create_by(customer_phone_number: from_number)
if company && customer
call = company.calls.create(
from: from_number,
to: to_number,
customer_id: customer.id,
call_status: params[:CallStatus],
call_sid: params[:CallSid],
forwarded_to: company.forwarding_number
)
forwarding_number = company.twilio_formatted_forwarding_number
if forwarding_number
render 'twilio/call_response.xml.haml', locals: { forwarding_number: forwarding_number }, content_type: 'text/xml'
end
else
puts 'ERROR (receive_call): company or customer couldn\'t be loaded'
end
end
我從來沒有需要爲這個回調(從twilio)的圖...但現在它說我需要一個。這是怎麼回事?
這裏有一個猜測:無論出於何種原因,您的'if company && customer'語句返回false會導致錯誤'puts',但不會調用render。也許嘗試在'puts'後面調用'render nothing:true,status:422'。 – jakenberg
@ jsksma2但爲什麼此代碼工作2個月,今天早上隨機停止工作? –
我不確定,但如果你看看你的方法,對於第一個if語句,如果沒有forwarding_number,那麼你的第二個if語句沒有得到執行,並且沒有其他的塊,所以導軌必須尋找它的相應視圖 – Mandeep