2017-09-22 1 views
0

rental_application_personal_details을 추가하고 테이블에서 first_name에 액세스하려고 시도한 후 문제가 시작되었습니다.레일 메일러에 대한 데이터 액세스 문제

컨트롤러 :

def create 
    unless @rental_application.submittable? 
    redirect_to @rental_application, notice: "You can't submit the rental application unless you complete it!" 
    return 
    end 

    if @rental_application.submitted! 
    RentalApplicationMailer.sales_agent_message(@rental_application, @rental_application_personal_details, @agent).deliver_now 
    if @rental_application.payment_request.authorized 
    CapturePaymentJob.perform_later(@rental_application.payment_request) 
    else 
     @rental_application.payment_request.void! 
    end 

    redirect_to @rental_application, notice: 'Your application was submitted! :)' 
    else 
    redirect_to @rental_application, notice: 'We were unable to submit your application.' 
    end 
end 

대여 신청 메일러 :

def sales_agent_message(rental_application, rental_application_personal_details, agent) 
    @rental_application = rental_application 
    @rental_application_personal_details = rental_application_personal_details 
    @agent = agent 
    @sales_agent = @rental_application.sales_agent.email 
    mail(:to => @sales_agent, :subject => "New Rental Application Recieved!") 
end 

판매 에이전트 메시지 :

안녕!

< % = @ rental_application_personal_details.first_name %>에서 대여 신청을 보냈습니다! %>

보기 그것은 <퍼센트 = LINK_TO! '여기', matrix_rental_applications_url %>

오류 :

enter image description here

+0

@rental_application_personal_details로 쓸 수있는 것은 .. 그것에서 오는을 확인할 전무하다. – krishnar

답변

1

@rental_application_personal_details 어디서나 설정되지 않을 것으로 보인다. create 방법에서는이를 사용하지만 처음에는 가치를 부여하지 않았습니다. 따라서, 그것은 nil입니다. nil.first_name은 현재 가지고있는 오류입니다.

0

당신은

if @rental_application.submitted! && @rental_application_personal_details.present? 

//code to send the mail 

end