Как добавить инвентарь через рубин / герою? - PullRequest
0 голосов
/ 30 марта 2020

В настоящее время я разрабатываю приложение для покупки продуктов питания. Я реализовал полосу как процесс оплаты, используя это в качестве руководства: https://github.com/stripe/example-ios-backend

проблема: при использовании этого метода я просто нажал на фиолетовый значок и приступил к вводу моей информации и создал backendUrl для моего приложения. Все работы, за исключением тех случаев, когда речь идет об обработке платежа, поскольку мои элементы инвентаря (расположенные в базе данных) не могут быть восстановлены. Поэтому при оформлении заказа я получаю это быстро: «Не удалось создать намерение платежа: неизвестно»

После получения этой ошибки я проверил журналы в Heroku и наткнулся на это: RuntimeError - Can't найдите цену на гуакамоле

, поэтому кажется, что платеж не проходит, потому что он не может получить цену для этого элемента.

Теперь, если вы изучите файл web.rb, полученный из руководства GitHub, которое я использовал.

Существует следующее:

# Our example apps sell emoji apparel; this hash lets us calculate the total amount to charge.
EMOJI_STORE = {


     "?" => 2000,
      "?" => 4000,
      "?" => 3000,
      "?" => 700,
      "?" => 600,
      "?" => 1000,
      "?" => 2000,
      "?" => 2500,
      "?" => 800,
      "?" => 3000,
      "?" => 2000,
      "?" => 5000,
      "?" => 5500,
      "?" => 6000,
      "?" => 2000,
      "?" => 2500,

}

def price_lookup(product)
  price = EMOJI_STORE[product]
  raise "Can't find price for %s (%s)" % [product, product.ord.to_s(16)] if price.nil?
  return price
end

def calculate_price(products, shipping)
  amount = 1099  # Default amount.

  if products
    amount = products.reduce(0) { | sum, product | sum + price_lookup(product) }
  end 

Наконец Я полагаю, я просто добавляю "Guacamole" => 2000 в список выше и запускаю его.

ПЛОХО, это не сработало. У меня нет опыта работы с ruby, но когда я применил вышеперечисленное к списку, я все еще получил ту же ошибку: RuntimeError - Не могу найти цену для гуакамоле

, это может быть что-то просто ... но на данный момент мои руки связаны, и, несмотря на несколько часов поиска и чтения учебных пособий, я не могу успешно добавить свои предметы, чтобы я мог успешно произвести зарядку.

1 Ответ

0 голосов
/ 30 марта 2020

Я думаю, что вы можете поместить несколько логов в этот код, чтобы увидеть, что происходит в запросе, например:

def price_lookup(product)
  p product
  p EMOJI_STORE

  price = EMOJI_STORE[product]
  raise "Can't find price for %s (%s)" % [product, product.ord.to_s(16)] if price.nil?
  return price
end

Другое дело, проверьте, обновлен ли код в heroku в списке гуакамоле.

Надеюсь, это поможет вам!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...