django电商项⽬源码_项⽬步骤
1.设计app,根据前端设计数据库app
2.新建虚拟环境,安装django,mysqlclient等库,打开编辑器选择虚拟环境,新建项⽬名称。
3.配置setting中的database,
DATABASES = {
'default': {
'ENGINE': 'django.sql',
'NAME': 'tgwblog',
'USER': 'root',
'PASSWORD': 'cptbtptp',
'HOST': '127.0.0.1',
}
}
navicate中新建数据库(utf8,genaral_ci),迁移数据库(tools, run manage.py task,makemigrations,migrate)。
4.新建app (run manage.py task,startapp),setting中注册app,重载setting⽅法
AUTH_USER_MODEL = "users.UserProfile"
5.设计models,(django⾃带表可以继承,字段为如图)
第⼀⾏加utf8编码
# _*_ encoding:utf-8 _*_
dels import AbstractUser #继承字段
外键错误解决办法
model写完了,继承的要重载unicode⽅法。最后向admin注册model,⽤xadmin作为后台管理(也可以⽤simpleui⽐xadmin好⽤),创建管理员createspueruser,设置后台中⽂如下
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False
当安装xadmin失败:
(1.当python2.7,django<2.0时:
(2.当python3.6,django>2.0时可以:寻对应的xadmin,所以我们需要安装xadmin==2.0.1版本。⾸先我们先去github上下载
xadmin==2.0.1的zip⽂件。(源码包)。
下载地址:sshwsfc/xadmin
将xadmin,crispy_forms(注意下划线)和注册到app中,并迁移数据库。
把urls中admin替换掉
ib import admin
from django.urls import path
import xadmin
urlpatterns = [
path('xadmin/', xadmin.site.urls),
]
1常规model注册admin如下:
from .models import UserProfile,EmailVerifyRecord,Banner
class UserProfileAdmin(admin.ModelAdmin):
pass
class EmailVerifyRecordAdmin(admin.ModelAdmin):
pass
class BannerAdmin(admin.ModelAdmin):
pass
ister(UserProfile,UserProfileAdmin)
ister(EmailVerifyRecord,EmailVerifyRecordAdmin)
ister(Banner,BannerAdmin)
2将model注册xadmin如下:
1.在app下新建adminx.py⽂件
写⼊:
from .models import UserProfile,EmailVerifyRecord,Banner
import xadmin
class UserProfileAdmin(object):
pass
class EmailVerifyRecordAdmin(object):
pass
class BannerAdmin(object):
pass
ister(UserProfile,UserProfileAdmin)
ister(EmailVerifyRecord,EmailVerifyRecordAdmin)
ister(Banner,BannerAdmin)
其中继承字段会导致注册失败:
项⽬中使⽤了xadmin, 并且我的UserProfile 继承了django ⾃带的User,并重写了⼀些字段:The model UserProfile is already registered
解决办法:
1.xadmin.site.unregister(UserProfile) #注销
2.ister(UserProfile, UserProfilesAdmin) #重新注册
3.makemigrations xadmin
4.migrate xadmin
6.编辑html,设计view,设计urls(路由),配置setting(ALLOWED_HOSTS = ['*'])。
1.拷贝html,新建template⽬录,static静态⽂件⽬录。
2.配置路由urls处理静态⽂件:
urls.py:
from ic import TemplateView
import xadmin
django admin 自定义页面path('xadmin/', xadmin.site.urls),
path('', TemplateView.as_view(template_name="index.html"), name="index"),
3.配置setting
末尾加:
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static')
]
4.改html中的静态⽂件(css,js)路径
1,配置⾸页跳转路径,配置静态⽂件相对路径(要在html中加载loadstaticfiles)
<!doctype html>
<html>
{% load staticfiles %}
<head>
.........
<link href="{% static 'css/base.css' %}" rel="stylesheet">
<link href="{% static 'css/m.css' %}" rel="stylesheet">
<script src="{% static 'js/jquery-1.8.3.min.js' %}" ></script>
<script src="{% static 'js/comm.js' %}"></script>
...
<li><a href="{% url 'index' %}">⾸页</a></li>
验证码库,github搜索:django-simple-captcha框架(版本0.4.6)下载及⽤法在github往下拉,表单提交要加csrftoken 9.完善。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论