Привет.
Работало до недавнего времени, сейчас на смене языка роняет сайт в 5020. Хостер после тщательной проверки ругается на https://www.drupal.org/project/commerce_currency_resolver, который дает кучу запросов, а потом соответственно все падает.
Задача вообще такая.
Юзер записывает цены, они суммируются (https://drupal.ru/node/144390), потом все идет через https://www.drupal.org/project/commerce_webform_order в корзину. А там при смене языка должна происходить конвертация RUB > EURO.
Есть прецеденты, идеи, направления? Ни я, ни хостер не можем найти причины, кроме тех самых десятков запросов, которые я описал выше. Да, конвертация через ЕЦБ включена, если что. Очень нужно решение. Любое другое, но с таким принципом.
Комментарии
Не знаю правильно я понял задачу или нет, но для получения курса валют я писал модуль. Можешь использовать эти курсы для своих расчетов. Вместо commerce_currency_resolver
Благодарю, я смотрел некоторые конвертеры, но речь все-таки о готовом решении, как резолвер, чтобы не лезть в код итд (я буду разбираться долго, больше с фронтом). И оно же, блин, работало. А задача, если упростить совсем, -- записываются цифры в рублях, а потом в корзине/чекауте отображаются уже в евро. Вот сама задача.
Неужели нет никаких решений/идей на тему конвертации? Ведь явно популярная в Commerce тема. Или я ошибаюсь относительно масштабов торговли посредством Друпал?
"записываются цифры в рублях, а потом в корзине/чекауте отображаются уже в евро" - обычно наоборот.
Как сделать вычисляемое поле в views?
Как в это поле подставить значение курса?
Ничего не понял в ответе) Вьюсы вообще не используются. Есть значение, которое создается некоторым способом. Это значение нужно разделить на курс и получить значение в евро. Если очень упростить все это.
А почему бы их и не использовать для вывода цен на товаре и в корзине?
Тсс, для Адано этот рецепт не говори.
Да нет товара) Это веб-форм, который генерит стоимость и кидает ее в корзину, дальше стандартно. Но цены нужно собрать в рублях, а потом конвертнуть в евро в корзине. Товар -- сервис. У него даже цена нулевая в вариации. Он просто должен быть, чтобы перенести данные веб-формы в корзину (Коммерс). И, блин, нужна конвертация той цифры в корзине.
Каренси ресолвер обычно работает в паре с коммерс иксченджером. И он курс обновляет либо по крону с указанной периодичностью, либо вручную. Там нет и не должно быть никакой кучи запросов, от которой что-то падает.
Так, уже интереснее. Эксченджер соответственно тоже есть. Менял сервис курсов с ЕЦБ на другой, не помогло. И, самое главное: падает, после первого падения на конвертации, уже на этапе перехода в корзину тупо!!! А импорт я жал всего пару раз, так он сам раз в сутки обновляет.
А что в логах?
Так там все норм, в том и дело))) Я бы сразу написал про логи, если бы было!
Хостер не может помочь, кроме того, что описал выше. Но падает, блин, НЕ явно по причине резолвера, на корзине ведь тоже падает потом. Однако, хостер заявляет, что превышений по тарифу нет, мощности не роняют.
А как сайт падает? Или что там вообще падает?)) На локалке то же самое?
На локаль еще не переносил тесты. На двух хостах (хостер один) падает по схеме. Падает на 5020 так: пошел в корзину из формы - все гуд, потом выбрал другой язык, который провоцирует конвертацию валюты, - упал. Через пять сек создаю "товар" в форме, добавляется в корзину, жму линк "перейти в корзину" - упал. БЛИН!
Пока нет возможности на другом хосте запустить. Но проблема явно есть. А хостер вообще никогда проблем не давал.
А валюта вместе с языком переключается? Там фатал эррор может быть, когда рубли с долларами суммируются. Нужно хитро конвертить всё в одну валюту при пересчётах.
Переключалась. А теперь роняет тупо.
Есть цифра, она идет в корзину, там нужно конвертировать -- используется резолвер. Долларов вообще не используем.
Ну если валюты разные, то там такая тема: в заказе одна валюта, в позициях в каждой может быть своя. Их надо просуммировать, разные валюты при суммировании тригерят ошибку. Плюс валюта заказа тоже тригерит ошибку, если не совпадает с позициями. Именно поэтому вылетает только страница корзины, а на других норм.
Ну и самое главное: в корзину идёт не цифра, а цифра с валютой, и никак иначе.
А если есть ещё и скидки, то вообще веселье безудержное))