Я делаю GET
запрос на Typeform.Если запрос выполнен успешно, я сохраняю ответ как order
в базе данных.Моя проблема заключается в этой конкретной части:
current_user.find_or_create_by(landing_id: item["landing_id]) do |order|
Если пользователь отправляет новую Typeform, метод не найдет landing_id
и, следовательно, снова создаст все orders
.Но эти orders
уже существуют в базе данных, поэтому каждый order
несколько раз сохраняется в моей базе данных.
Как этого избежать?
items = response.parsed_response["items"]
items.each do |item|
@order = current_user.orders.find_or_create_by(landing_id: item["landing_id"]) do |order|
order.landing_id = item["landing_id"]
order.email = item["hidden"]["email"]
order.price = item["hidden"]["price"]
order.project = item["hidden"]["project"]
order.save!
end
end