Как в Django-oscar менять цены в зависимости от курса валюты?

Необходимо менять все цены в магазине в зависимости от курса доллара.
Пока единственная идея переписать Prices и просто умножить на константу курса...
Если кто то сталкивался с такой задачей подскажите как правильно такое реализовать.
  • Вопрос задан
  • 816 просмотров
Пригласить эксперта
Ответы на вопрос 2
winordie
@winordie
Лучшая документация -- исходники
Переопределить метод pricing_policy() в apps/partner/strategy.py
Например
def rate_partner(self, partner_code):
    exchange_rate = ExchangeRates.objects.filter(partner__code=partner_code).latest('date_created')
    return exchange_rate.rate

def pricing_policy(self, product, stockrecord):
    # Check stockrecord has the appropriate data
    if not stockrecord or stockrecord.price_excl_tax is None:
        return prices.Unavailable()
    return prices.FixedPrice(
        currency=stockrecord.price_currency,
        excl_tax=stockrecord.price_excl_tax*self.rate_partner('my_partner'),
        tax=D('0.00'))
Ответ написан
loader777
@loader777
Python/django разработчик
Скорее всего придется дописывать.
Сделать в модели доп поле с ценой в у.е. и в зависимости от курса пересчитывать цену периодически.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы