用django2.1开发公司官网(上)
1.在MySQL中新建数据库
show databases;//查看已经有的数据库
create database guanwang;
2.新建django项目guan
1.使用pycharm新建django项目guan,新建App取名company
2.新建static目录,在static目录下新建css目录、js目录、img目录
3.新建media目录,在media目录下新建images目录
4.在settings的末尾增加代码
STATICFILES_DIRS=(os.path.join(BASE_DIR, 'static'),) MEDIA_URL="/media/"
MEDIA_ROOT=os.path.join(BASE_DIR,"media")
5.在urls.py中
from django.contrib import admin
from django.urls import path from django.views.static import serve
from guan.settings import MEDIA_ROOT urlpatterns = [
path('admin/', admin.site.urls),
#配置上传文件的访问处理函数
path('media/<path:path>',serve,{'document_root':MEDIA_ROOT}),
]
3.建立django项目与mysql数据库链接:
1.安装PyMYSQL
pip install PyMYSQL
2.在项目guan下的guan目录下的__init__.py中
import pymysql
pymysql.install_as_MySQLdb()
3.在settings.py中
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': "guanwang",
'USER':'root',
'PASSWORD':'(数据库密码)',
'HOST':"127.0.0.1",
'PORT':'',
'OPTIONS':{'init_command':'SET default_storage_engine=INNODB;'}
}
}
4.执行数据更新命令
python manage.py makemigrations
python manage.py migrate
5.创建超级用户
python manage.py createsuperuser Username:用户名
Email:邮箱
Password:自定义一个不少于8位的密码(密码不显示的)
Password(again):确认密码
4.目录整理
1.在项目目录下新建目录apps和extra_apps,将company目录导入apps
2.mark路径
在apps和extra_apps上分别,右键→Mark Directory as→Sources Root
3.settings中加代码配置路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))#在这行下面添加如下代码
import sys
sys.path.insert(0,BASE_DIR)
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
sys.path.insert(0,os.path.join(BASE_DIR,'extra_apps'))
5.导入第三方组件
1.DjangoUeditor富文本编辑框的安装与配置
1.将DjangoUeditor导入extra_apps中
2.在settings.py中注册
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'company.apps.CompanyConfig',
'DjangoUeditor',
]
3.在urls.py中增加配置信息
#.....
from django.urls import include urlpatterns = [
#......
path('ueditor/',include('DjangoUeditor.urls' )),
]
2.xadmin后台管理系统
1.将xadmin导入extra_apps
2.在apps/company下新建adminx.py文件
import xadmin
from xadmin import views class BaseSetting(object):
enable_themes = True
use_bootswatch = True class GlobalSettings(object):
site_title = "落忆网络科技后台管理系统"
site_footer = "luoyikeji"
# menu_style = "accordion" xadmin.site.register(views.BaseAdminView, BaseSetting)
xadmin.site.register(views.CommAdminView, GlobalSettings)
3.在settings.py中注册
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'company.apps.CompanyConfig',
'DjangoUeditor', 'crispy_forms',
'xadmin'
]
4.安装依赖包
pip install django-crispy-forms django-reversion django-formtools future httplib2 six django-import-export
pip install xlwt xlsxwriter
5.在urls.py中配置
import xadmin urlpatterns = [
path('xadmin/', xadmin.site.urls),
#....
]
6.执行数据更新命令
python manage.py makemigrations
python manage.py migrate
7.将语言改为中文
1.在settings.py中
LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = False
2.在apps/company/apps.py中
from django.apps import AppConfig class CompanyConfig(AppConfig):
name = 'company'
verbose_name = '公司信息'
运行django项目
访问:http://127.0.0.1:8000/xadmin/ 然后用超级用户的身份登录
效果图

用django2.1开发公司官网(上)的更多相关文章
- 几个比較好的IT站和开发库官网
几个比較好的IT站和开发库官网 1.IT技术.项目类站点 (1)首推CodeProject,一个国外的IT站点,官网地址为:http://www.codeproject.com,这个站点为程序开发人员 ...
- 几个比较好的IT站和开发库官网
1.IT技术.项目类网站 (1)首推CodeProject,一个国外的IT网站,官网地址为:http://www.codeproject.com,这个网站为程序开发者提供了很好的代码示例以及讲解,不过 ...
- 第四课 开发uehtml官网响应式静态页面
概况:整站布局.头部菜单响应式设置.最新消息模块变化.内容模块四三二响应式变化. 伪类选择器: E:nth-of-type(n) 表示E父元素中的第n个字节点,且类型为E E:nth-la ...
- 如何从sun公司官网下载java API文档(转载)
相信很多同人和我一样,想去官网下载一份纯英文的java API文档,可使sun公司的网站让我实在很头疼,很乱,全是英文!所以就在网上下载了别人提供的下载!可是还是不甘心!其实多去看看这些英文的技术网站 ...
- iOS开发——开发者官网注册新设备
1.第一步登陆苹果开发者中心官网,进入证书栏后如下图:点击All 或者如果是iPhone设备直接点击iPhone也行. 然后点击右上角的[+]号
- .net mvc 使用ueditor的开发(官网没有net版本?)
1.ueditor的下载导入 官网下载地址:https://ueditor.baidu.com/website/download.html · 介绍 有两种,一种开发版,一种Mini版,分别长这样: ...
- ESP8266 LUA脚本语言开发: 准备工作-官网获取LUA固件
前言 这节咱去官网上获取lua开发的固件. 官网下载 下面是我以前写的,咱不使用官网下载的固件,咱使用自己编译的固件.. 填写好自己的的邮箱地址,然后选择好自己需要的功能,一会编译好的固件就会发到您的 ...
- 新公司官网项目优化实践(Vue)
入职后接手website-html和website-mobile项目,发现项目加载速度不太理想,于是结合自己之前的经验对项目做了优化.此篇文章主要记录这次优化详情. 原始项目:开发环境:website ...
- iOS 开发 -----公司测试打包上传流程
打包iOS应用程序 如果想要将做的iOS应用程序安装到自己的iOS设备上测试.或者安装到别人的iOS设备上,或者想发布到App Store中,先要给应用签名.签名就要有证书,这就需要申请证书的过程了. ...
随机推荐
- 容器化系列 - 通过Grafana监测InfluxDB数据 on Docker
本文演示在Docker中运行Grafana和InfluxDB,并通过Grafana展示InfluxDB曲线图. 1 准备工作 1.1 安装Docker 请参考这里 1.2 下载镜像 $ docker ...
- java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start com ...
- c/c++ linux 进程间通信系列1,使用signal,kill
linux 进程间通信系列1,使用signal,kill 信号基本概念: 软中断信号(signal,又简称为信号)用来通知进程发生了异步事件.进程之间可以互相通过系统调用kill发送软中断信号.内核 ...
- LeetCode算法题-Binary Search(Java实现)
这是悦乐书的第297次更新,第316篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第165题(顺位题号是704).给定n个元素的排序(按升序)整数数组nums和目标值,编 ...
- Python开发【内置模块篇】collections
namedtuple namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素. 这样一来,我们用name ...
- linux -- 添加、修改、删除路由
在日常的使用中,或者在服务器中,有两个网卡配置两个地址,访问不同的网络段,这种情况是非常常见的现象,但是,我们需要额外的添加路由表来决定发送的数据包经过正确的网关和interface才能正确的进行通信 ...
- 磁盘缓存--YYCache 设计思路
为了设计一个比较好的磁盘缓存,我调查了大量的开源库,包括 TMDiskCache.PINDiskCache.SDWebImage.FastImageCache 等,也调查了一些闭源的实现,包括 NSU ...
- 《通过C#学Proto.Actor模型》之Spawning
Props是配置Actor和实例化Actor,那实例化后,就应该访问了,Props.Actor提供了Actor.Spawn(),Actor.SpawnPrefix(),Actor.SpawnNamed ...
- Mybatis实现高级映射一对一、一对多查询
终于把论文写得差不多了,系统也不急着完成,可以抽出点时间来完成这个系列的博客了.在写本博客之前我是惶恐不安的,高级映射一贯是持久层框架里的重中之重,小到自己开发小系统,大到企业级开发,表的存在从来就不 ...
- JVM-高效并发
Java内存模型与线程: Java内存模型的目的是定义程序中各个变量的访问规则,此处的变量包括实例字段.静态字段和构成数组对象的元素,但不包括局部变量和方法参数,因为后者是线程私有的. Java内存模 ...