赞
踩
1.设计app,根据前端设计数据库app
2.新建虚拟环境,安装django,mysqlclient等库,打开编辑器选择虚拟环境,新建项目名称。
3.配置setting中的database,
- DATABASES = {
- 'default': {
- 'ENGINE': 'django.db.backends.mysql',
- '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 _*_
- from django.contrib.auth.models 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时:
安装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,安装完之后要迁移数据库!)
- 将xadmin,crispy_forms(注意下划线)和注册到app中,并迁移数据库。
- 把urls中admin替换掉
- from django.contrib 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
- admin.site.register(UserProfile,UserProfileAdmin)
- admin.site.register(EmailVerifyRecord,EmailVerifyRecordAdmin)
- admin.site.register(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
- xadmin.site.register(UserProfile,UserProfileAdmin)
- xadmin.site.register(EmailVerifyRecord,EmailVerifyRecordAdmin)
- xadmin.site.register(Banner,BannerAdmin)

其中继承字段会导致注册失败:
项目中使用了xadmin, 并且我的UserProfile 继承了django 自带的User,并重写了一些字段
:The model UserProfile is already registered
解决办法:
- 1.xadmin.site.unregister(UserProfile) #注销
- 2.xadmin.site.register(UserProfile, UserProfilesAdmin) #重新注册
- 3.makemigrations xadmin
- 4.migrate xadmin
6.编辑html,设计view,设计urls(路由),配置setting(ALLOWED_HOSTS = ['*'])。
1.拷贝html,新建template目录,static静态文件目录。
2.配置路由urls处理静态文件:
urls.py:
- from django.views.generic import TemplateView
- import xadmin
-
- 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.完善。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。