2016-06-25 2 views
0

테스트중인 레일스 애플리케이션의 스트라이프를 통해 첫 번째 테스트 주문을하려고하는데, NoMethodError - 정의되지 않은 메소드 '스트라이프'가 #, 정확히 제공됩니다. 그것을 일으키는 원인이되는 선은 나의 모양 순서 파일에 JS 스 니펫에서있다.# <레일즈에 대해 정의되지 않은 메소드 '스트라이프'

편집 : 오류의 스크린 샷을 추가 Rails.application.secrets에 Rails.configuration.stripe 변경은 페이지로드 할 수 있지만 체크 아웃 다른 오류 (또한 첨부 된 스크린 샷)

error screenshot publishable error

을 던지고있다

<script> 
 
    var handler = StripeCheckout.configure({ 
 
    key: '<%= Rails.configuration.stripe[:publishable_key] %>', 
 
    token: function(token, arg) { 
 
     document.getElementById("stripeToken").value = token.id; 
 
     document.getElementById("stripeEmail").value = token.email; 
 
     document.getElementById("chargeForm").submit(); 
 
    } 
 
    }); 
 

 
document.getElementById('btn-order').addEventListener('click', function(e) { 
 
    var quantity = $('#quantity').val(); 
 
    var total_price = (quantity * "<%= @meal.price %>") + "00"; 
 
    $('#total_price').val(total_price); 
 
    handler.open({ 
 
    name: "Sixerr", 
 
    description: "<%= @meal.title %>", 
 
    amount: total_price 
 
    }); 
 
    e.preventDefault(); 
 
}); < /script>

그리고 여기 내 stripe.rb 파일

입니다

Rails.configuration.stripe = { 
 
    :publishable_key => ENV['STRIPE_PUBLISHABLE_KEY'], 
 
    :secret_key  => ENV['STRIPE_SECRET_KEY'] 
 
} 
 

 
Stripe.api_key = Rails.configuration.stripe[:secret_key]
는 몇 가지 다른 답변이 있었다 그러나 그들 중 누구도이 문제를 해결 여기에 어떤 도움을 주셔서 감사합니다 것 같았다.

+0

이니셜 라이저 폴더에 stripe.rb 파일이 있습니까? 그리고 웹 서버를 추가 한 후 다시 시작 했습니까? – danielrsmith

+0

또한 전체 오류 스택을 추가 할 수 있습니까? –

+0

@danielrsmith 거룩한 쓰레기 그건 완전히 그랬어, 정말 고마워! –

답변

2

stripe.rb 파일이 config/initializers 폴더에 있는지 확인하고 완료되면 이니셜 라이저를로드 할 수 있도록 웹 서버를 다시 시작해야합니다.

관련 문제