python安装虚拟环境请参考:
https://blog.csdn.net/kaishinishiwode/article/details/89157301
1. 安装django:
pip install django
2.创建项目:
django-admin startproject test1
3.创建应用:
python manage.py startapp booktest
4.根据模型类生成sql语句,迁移文件被生成到应用的migrations目录及创建超级管理员
python manage.py makemigrations
python manage.py migrate
创建超级管理员:python manage.py createsuperuser
5.修改settings.py文件,设置TEMPLATES的DIRS值及语言配置
|
6.mysql数据库配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 驱动引擎
'NAME': 'df',
'USER': 'root',
'PASSWORD': 'root',
'HOST': 'localhost',
'PORT': '3306',
}
}
7.redis配置:
SESSION_ENGINE = 'redis_sessions.session'
SESSION_REDIS_HOST = '%s'%HOST_IP
SESSION_REDIS_PORT = 6379
SESSION_REDIS_DB = 1
SESSION_REDIS_PASSWORD = ''
SESSION_REDIS_PREFIX = 'session'
8.缓存配置
CACHES = {
"default": {
"BACKEND": "redis_cache.cache.RedisCache",
"LOCATION": "redis://%s:6379/9"%HOST_IP,
'TIMEOUT': 60,
# 'OPTIONS':'django_redis.client.DefaultClient'
"OPTIONS": {
"CLIENT_CLASS": "redis_cache.client.DefaultClient",
},
},
}
9.添加,修改数据自动生成索引
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor
from django.core.cache import cache
# Register your models here.
# 重写,更改数据自动生成首页父类
class BaseModelAdmin(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
'''更新或者新增,删除'''
# 调用父类 重写父类的方法,加自己的逻辑
super().save_model(request, obj, form, change)
# 发出任务,让celery重新生成
from my_Celery.my_task import generate_static_index_html # 重新发送首页
generate_static_index_html.delay()
'''更新缓存----清除缓存'''
cache.delete('index_page_data')
def delete_model(self, request, obj):
'''删除表的数据调用'''
super().delete_model(request, obj)
# 发出任务,让celery重新生成
from my_Celery.my_task import generate_static_index_html # 重新发送首页
generate_static_index_html.delay()
admin.site.register(IndexPromotionBanner, IndexPromotionBannerAdmin)
admin.site.register(IndexGoodsBanner, IndexGoodsBannerAdmin)
admin.site.register(IndexTypeGoodsBanner, IndexTypeGoodsBannerAdmin)
admin.site.register(GoodType, GoodTypeAdmin)