В моем javascript есть метод, с помощью которого я отправляю данные с ajax моей формы в действие в моем контроллере ruby
$scope.pay_spei = function () {
$('#pay_spei').attr("disabled", true);
var concepts = JSON.stringify($scope.transaction_spei.getConcepts());
$.ajax({
url: '/payment_spei/charge',
type: "POST",
data: {
payment_spei: concepts
},
success: function (data) {
console.log("SUCCESS!");
},
error: function (data) {
console.log("ERROR");
}
}).success(function () {
window.location.href = "/payment_spei/charge";
});
};
В моей консоли:
Processing by PaymentSpeiController#charge as */*
Parameters: {"payment_spei"=>"[{\"name\":\"bbbbb\",\"quantity\":12,\"unit_price\":10000,\"$$hashKey\":\"object:3\"}]"}
{"payment_spei"=>"[{\"name\":\"bbbbb\",\"quantity\":12,\"unit_price\":10000,\"$$hashKey\":\"object:3\"}]", "controller"=>"payment_spei", "action"=>"charge"}
inдействие моего контроллера, называемое зарядить, эти данные исчезают:
def charge
concepts = JSON.parse(params[:payment_spei])
end
выдает мне эту ошибку
TypeError в PaymentSpeiController # charge нет неявного преобразования nil в String
эта ошибка не появляется при удалении перенаправления в javascript
window.location.href = "/payment_spei/charge"
Мне нужно перенаправить со страницы, как я могу решить эту ошибку?