Django安装和使用
2017-08-30 10:00
393 查看
Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站!官方网站:Meet
Django
后续需要连接数据库,所以要安装
因为我使用的是
注:因为
若
测试模块是否安装成功:
如果没有报错说明模块安装成功。
如果不安装此模块,后续启动项目连接数据库(mysql)会报错:
为了方便管理,可以单独创建一个目录,用于存放新项目,cd到新目录中,执行命令项目默认存放在当前目录下。
1、新建一个 django project项目(例如:fxy_blog)
新项目目录结构如下:
注:
and manage.py
2、启动测试
这时,我们有了一个自己的项目,可以启动测试一下:
然后你会看到以下输出:
Django
一、环境准备(centos7.4):
# yum install python-django -y //安装django(我装的是djang2.0版本)
# yum install mariadb mariadb-server //安装数据库(5.5版本)
# systemctl enable mariadb.service //开机自启
# systemctl start mariadb.service //启动mysql
# mysql_secure_installation //初始化数据库及密码
后续需要连接数据库,所以要安装
mysql驱动:
因为我使用的是
python3.6版本,已经不支持
MYSQLdb模块,所以安装
pymysql模块:
# pip install PyMySQL //安装mysql驱动
注:因为
django默认只识别
MYSQLdb模块,因此安装了
pymysql模块后在下面同步数据库步骤前需要改下配置,详情见下面步骤;
若
python2.7请安装
MySQL-python,
python3.4请安装
python34-mysql
测试模块是否安装成功:
python2.7/3.4:
>>> import MYSQLdb
python3.6:
>>> import pymysql
如果没有报错说明模块安装成功。
如果不安装此模块,后续启动项目连接数据库(mysql)会报错:
Error loading MySQLdb module
二、基本命令:
为了方便管理,可以单独创建一个目录,用于存放新项目,cd到新目录中,执行命令项目默认存放在当前目录下。1、新建一个 django project项目(例如:fxy_blog)
# mkdir /fxy
# cd /fxy
# django-admin startproject fxy_blog //项目名字只支持下划线和字母
新项目目录结构如下:
fxy_blog/ //项目名字
├── fxy_blog //包含项目中实际的Python代码
│ ├── __init__.py //默认为一个空文件,定义了此目录为一个python包
│ ├── settings.py //此项目的配置
│ ├── urls.py //此项目中URL的一些声明
│ └── wsgi.py //WSGI兼容的Web服务器为此项目提供服务的入口点
└── manage.py //一个命令行实用程序,可让与此Django项目进行交互
注:
django-admin是Django的用于管理任务的命令行工具;
manage.py会在每个Django项目中自动创建。
manage.py与
django-admin处理的事情差不多,但是也有不同:django-admin
and manage.py
2、启动测试
这时,我们有了一个自己的项目,可以启动测试一下:
# python manage.py runserver
然后你会看到以下输出:
Performing system checks...
System check identified no issues (0 silenced).
December 11, 2017 - 09:52:22
Django version 2.0, using settings 'fxy_blog.settings'
Starting development server at http://127.0.0.1:8000/[/code]Quit the server with CONTROL-C.
上面只是允许本机访问,如果允许所有人访问执行:# python manage.py runserver 0.0.0.0:8000
监听端口可任意更改。
现在已经运行,在浏览器中输入http://114.215.157.174:8000/会看到恭喜页面,还有一个绿色的小火箭,说明项目开始工作啦!
报错解决:执行启动命令后,浏览器访问可能会报错DisableALLOWED_HOSTS字样(忘记截图了),这时需要修改文件:# vim /fxy/fxy_blog/fxy_blog/settings.py
找到ALLOWED_HOSTS,修改为ALLOWED_HOSTS = ['*']
然后重新启动项目。
不过有一个项目是仅仅不够的,我们需要有自己的网页~
3、新建一个django app应用程序(例如:web)# django-admin startapp web或# python manage.py startapp web
项目和应用程序有什么区别?
一个应用程序是一个Web应用程序,它执行一些操作,例如Weblog系统,公共记录数据库或简单的应用程序。 项目是特定网站的配置和应用程序的集合。 项目可以包含多个应用程序。 一个应用程序可以在多个项目中。
新应用程序目录结构如下:web├── admin.py├── apps.py├── __init__.py├── migrations│ └── __init__.py├── models.py├── tests.py└── views.py
url.py:urls.py本质上就是一个标准的python文件,这个python文件的作用就是在URL请求和处理该请求的视图函数之间建立一个对应关系,换句话说,它就是一个url请求映射表。参考:Django中关于URL配置文件urls.py的理解
4、编写我们的第一个view
打开文件web/view.py,然后输入下面的python代码:# vim web/views.pyfrom django.http import HttpResponsedef index(request):return HttpResponse("Hello, world. You're at the web index.")
要调用这个视图,需要映射到URL,在web目录中创建一个urls.py的文件,web目录结构如下:web├── admin.py├── apps.py├── __init__.py├── migrations│ └── __init__.py├── models.py├── tests.py├── urls.py└── views.py
编辑web/urls.py文件,添加如下代码:# vim web/urls.pyfrom django.urls import pathfrom . import viewsurlpatterns = [path('', views.index, name='index'),]
下一步是将根URL配置文件指向web.urls模块。
在fxy_blog/urls.py中,为django.urls.include添加一个导入,并在urlpatterns列表中插入一个include(),如下:# vim fxy_blog/urls.pyfrom django.urls import include, pathfrom django.contrib import adminurlpatterns = [path('web/', include('web.urls')),path('admin/', admin.site.urls),]
现在我们已经把index view关联到了URL配置文件中,让我们来验证一下,执行:# python manage.py runserver 0.0.0.0:8000
在浏览器中输入http://IP:8000/web/,你会看到 “Hello, world. You’re at the polls index.”字样,证明你成功了!
5、连接数据库
文章开头说过python3.6支持pymysql模块,但是django不识别,需要修改:fxy_blog/fxy_blog/__init__.py
在里面输入以下内容并保存:python import pymysql pymysql.install_as_MySQLdb()
修改数据库连接:# vim /fxy/fxy_blog/fxy_blog/settings.py
找到DATABASES字段,修改成:DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', //连接数据库类型'NAME': 'test', //数据库名称'USER': 'root', //用户'PASSWORD': '123456', //数据库密码'HOST': '127.0.0.1', //主机'PORT': '3306', //数据库端口号}}
然后保存退出
数据库类型可选:django.db.backends.sqlite3,django.db.backends.postgresql,django.db.backends.mysql,
ordjango.db.backends.oracle或其他:Database
Backend
执行以下命令:# python manage.py migrate
如果没有python报错说明没问题~
6、清空数据库# python manage.py flush
7、创建超级管理员# python manage.py createsuperuser
按照提示输入用户名和对应的密码就好了邮箱可以留空,用户名和密码必填。
修改用户密码可以用:# python manage.py changepassword username
设置好管理员,就可以登录django后台管理页面管理一些用户和组:
在浏览器输入http://IP:8000/admin/,输入刚才创建的管理员账号和密码登录。
8、导出数据 导入数据# python manage.py dumpdata appname > appname.json# python manage.py loaddata appname.json
9、Django 项目环境终端# python manage.py shell
10、数据库命令行# python manage.py dbshell
app文件:将新的app加入到 new_project/settings.py #加入新app
view文件:新建app目录下:learn/views.py #写明需求模块
url文件:新建项目的子目录下:new_project/urls.py #调用需求模块显示在网页上
相关文章推荐
- PYTHON(DJANGO)使用日记之如何找到linux系统下django的安装路径
- ulipad在xp下的安装及使用UliPad进行Django项目开发
- django 数据库增强工具 south 的安装使用和注意事项。。。
- django安装和初次使用
- django 简易博客开发 1 安装、创建、配置、admin使用
- Python的Web开发利器――Django安装使用经验谈
- linux下使用wsgi安装django应用
- python django的安装配置使用
- django1.7使用allauth社交用户系统的安装配置
- 【Django】Bootstrap 安装和使用
- django 中 manage.py通常使用的各种命令大全(包含django 安装指导及测试)
- Django 1.8安装使用
- linux下Django的安装和博客园的使用
- <PY><Django>Win下Django安装使用
- django-10-数据库使用04 后台安装配置及增加用户对数据库基本读写操作
- Django介绍、安装配置、基本使用、Django用户注册例子
- Django_ 安装、创建、配置、admin使用(1)
- Django的安装以及基础使用
- django 简易博客开发 1 安装、创建、配置、admin使用
- 使用Django——安装