当前位置:   article > 正文

django电商项目源码_项目步骤

django商城项目源码

13a80f6d5a77bdcfe4637059d828774b.png

1.设计app,根据前端设计数据库app

2.新建虚拟环境,安装django,mysqlclient等库,打开编辑器选择虚拟环境,新建项目名称。

3.配置setting中的database,

  1. DATABASES = {
  2. 'default': {
  3. 'ENGINE': 'django.db.backends.mysql',
  4. 'NAME': 'tgwblog',
  5. 'USER': 'root',
  6. 'PASSWORD': 'cptbtptp',
  7. 'HOST': '127.0.0.1',
  8. }
  9. }

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"

2513b260fda41ee25ab5226c6907b4e9.png

5.设计models,(django自带表可以继承,字段为如图)

  1. 第一行加utf8编码
  2. # _*_ encoding:utf-8 _*_
  3. from django.contrib.auth.models import AbstractUser #继承字段

c4ae7a4dfd9062eca320cdc082bf029a.png

527a6a7c2cf089a61a1fd941d5662507.png
外键错误解决办法

model写完了,继承的要重载unicode方法。最后向admin注册model,用xadmin作为后台管理(也可以用simpleui比xadmin好用),创建管理员createspueruser,设置后台中文如下

  1. LANGUAGE_CODE = 'zh-hans'
  2. TIME_ZONE = 'Asia/Shanghai'
  3. USE_I18N = True
  4. USE_L10N = True
  5. USE_TZ = False
  6. 当安装xadmin失败:

f601ca8d416f987c898738a9ce5c6ee9.png

(1.当python2.7,django<2.0时:

安装xadmin失败,因为README.rst导致的,github下载https://github.com/sshwsfc/xadmin源码,将README.rst内容删除为空白。再安装即可。)

(2.当python3.6,django>2.0时可以:寻找对应的xadmin,所以我们需要安装xadmin==2.0.1版本。首先我们先去github上下载xadmin==2.0.1的zip文件。(源码包)。

下载地址:sshwsfc/xadmin

源码安装请学习https://blog.csdn.net/xujin0/article/details/84583969,安装完之后要迁移数据库!)

  1. 将xadmin,crispy_forms(注意下划线)和注册到app中,并迁移数据库。
  2. 把urls中admin替换掉
  3. from django.contrib import admin
  4. from django.urls import path
  5. import xadmin
  6. urlpatterns = [
  7. path('xadmin/', xadmin.site.urls),
  8. ]

1常规model注册admin如下:

  1. from .models import UserProfile,EmailVerifyRecord,Banner
  2. class UserProfileAdmin(admin.ModelAdmin):
  3. pass
  4. class EmailVerifyRecordAdmin(admin.ModelAdmin):
  5. pass
  6. class BannerAdmin(admin.ModelAdmin):
  7. pass
  8. admin.site.register(UserProfile,UserProfileAdmin)
  9. admin.site.register(EmailVerifyRecord,EmailVerifyRecordAdmin)
  10. admin.site.register(Banner,BannerAdmin)

2将model注册xadmin如下:

  1. 1.在app下新建adminx.py文件
  2. 写入:
  3. from .models import UserProfile,EmailVerifyRecord,Banner
  4. import xadmin
  5. class UserProfileAdmin(object):
  6. pass
  7. class EmailVerifyRecordAdmin(object):
  8. pass
  9. class BannerAdmin(object):
  10. pass
  11. xadmin.site.register(UserProfile,UserProfileAdmin)
  12. xadmin.site.register(EmailVerifyRecord,EmailVerifyRecordAdmin)
  13. xadmin.site.register(Banner,BannerAdmin)

其中继承字段会导致注册失败:

项目中使用了xadmin, 并且我的UserProfile 继承了django 自带的User,并重写了一些字段

:The model UserProfile is already registered

解决办法:

  1. 1.xadmin.site.unregister(UserProfile) #注销
  2. 2.xadmin.site.register(UserProfile, UserProfilesAdmin) #重新注册
  3. 3.makemigrations xadmin
  4. 4.migrate xadmin

6.编辑html,设计view,设计urls(路由),配置setting(ALLOWED_HOSTS = ['*'])。

1.拷贝html,新建template目录,static静态文件目录。

2.配置路由urls处理静态文件:

urls.py:

  1. from django.views.generic import TemplateView
  2. import xadmin
  3. path('xadmin/', xadmin.site.urls),
  4. path('', TemplateView.as_view(template_name="index.html"), name="index"),

3.配置setting

  1. 末尾加:
  2. STATICFILES_DIRS = [
  3. os.path.join(BASE_DIR,'static')
  4. ]

4.改html中的静态文件(css,js)路径

1,配置首页跳转路径,配置静态文件相对路径(要在html中加载loadstaticfiles)

  1. <!doctype html>
  2. <html>
  3. {% load staticfiles %}
  4. <head>
  5. .........
  6. <link href="{% static 'css/base.css' %}" rel="stylesheet">
  7. <link href="{% static 'css/m.css' %}" rel="stylesheet">
  8. <script src="{% static 'js/jquery-1.8.3.min.js' %}" ></script>
  9. <script src="{% static 'js/comm.js' %}"></script>
  10. ...
  11. <li><a href="{% url 'index' %}">首页</a></li>

验证码库,github搜索:django-simple-captcha框架(版本0.4.6)下载及用法在github往下拉,表单提交要加csrftoken

9.完善。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号