跳转到主要内容

Django Shop的多货币支持

项目描述

=================================
django SHOP - 多货币
=================================

此应用程序为django SHOP添加了对多货币的支持。

警告
=======

(尚未)不要使用!
此应用程序仍在开发中,可能根本无法工作。

安装
============

这需要django SHOP才能工作(https://github.com/chrisglass/django-shop)

* 将 `shop_multiplecurrencies` 添加到您的 settings.py 中的 INSTALLED_APPS
* 将 `shop_multiplecurrencies.middleware.MultipleCurrenciesMiddleware` 添加到您的
`MIDDLEWARE_CLASSES` 设置
* 将货币列表添加到 `SHOP_CURRENCIES` 设置中,如下所示

::

SHOP_CURRENCIES=[ # 小写代码,请
['chf', '瑞士法郎'],
['eur', '欧元'],
]

使用
=====

* 将MultipleCurrenciesField添加到您的产品模型中

::

from django.db import models
from shop_multiplecurrencies.fields import MultipleCurrenciesField
from shop.util.fields import CurrencyField

class MyProduct(models.Model)
# 我的字段 ...
price = MultipleCurrenciesField(CurrencyField)

在我们的示例中,该模型将有两个字段:`price_chf` 和 `price_eur`。

* 通过一个额外的字段扩展BaseOrder,该字段告诉我们订单是在哪种货币下完成的

::

from django.conf import settings
from shop.models.defaults.bases import BaseOrder
from shop.models.defaults.managers import OrderManager

class MyOrder(BaseOrder)
currency = models.CharField(max_length=6, choices=settings.SHOP_CURRENCIES)
objects = OrderManager()

def save(self, *args, **kwargs)
self.currency = get_currency()
super(MyOrder, self).save(*args, **kwargs)

class Meta(object)
abstract = False

* 在您的模板中使用货币模板过滤器来为价格添加正确的货币前缀

::

{% load currency %}

<p>此产品的价格是 {{ price|currency }}</p>

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

django-shop-multiplecurrencies-1.0.0.tar.gz (3.0 kB 查看哈希值)

上传时间 源代码

由以下组织支持