使用django mptt的django商店可扩展类别应用程序
ls-django-shop-categories的Python项目详细描述
一个使用django mptt的django商店扩展类应用程序。
安装
对于当前稳定版本:
pip install ls-django-shop-categories
对于开发版本:
pip install -e git+git://github.com/lanshark/ls-django-shop-categories.git#egg=ls-django-shop-categories
运行测试:
git clone git://github.com/lanshark/ls-django-shop-categories.git cd ls-django-shop-categories virtualenv test_env source ./test_env/bin/activate pip install -r requirements.txt python develop.py test
配置
将shop_categories和treeadmin添加到settings.INSTALLED_APPS。
将SHOP_PRODUCT_MODEL设置为shop_categories.models.defaults.product.default.CategoryProduct。
在url.py中,在您的店铺模式之前添加。
然后运行:urlpatterns += patterns('',
url(r'^catalog/', include('shop_categories.urls')),
)
manage.py migrate
扩展类别模型
在您自己的应用程序中,使用init.py和category.py目录创建一个models目录,如下所示:
app/models/__init__.py app/models/category.py
注意:不要从category.py的init.py中导入模型,该模型不应该在“真实”模型模块中,因为这将导致重写的类别模型被定义两次。
在category.py中:
from django.db import models from shop_categories.models.defaults.category.base import ProductCategoryBase class Category(ProductCategoryBase): image = models.ImageField(upload_to='categoryimages/', null=True, blank=True) class Meta: abstract = False app_label = 'app'
将SHOP_CATEGORIES_CATEGORY_MODEL设置为('app.models.category.Category, 'app')
在admin.py中注册您的自定义类别模型:
from shop_categories.models import Category from shop_categories.admin import ProductCategoryAdmin admin.site.register(Category, ProductCategoryAdmin)
然后,假设您的产品型号尚未同步,请运行:
manage.py migrate
扩展产品型号
在您的商店中扩展产品模型时,请确保它们从shop_categories.models.defaults.product.base.CategoryProductBase子类中添加category foreignkey和m2m字段。
示例实现
有ls django shop categories的django商店的示例可以在这里找到:https://github.com/lanshark/ls-django-shop-example
1.0.4
更新的依赖项
1.0.3
更新了默认布尔字段
1.0.2
ls django treeadmin的更新依赖项
1.0.1
分叉,重命名,由scott sharkey更新 增加了与django 1.7+和python 3的兼容性
1.0
原作者的最新版本