最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过。Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧~
本篇笔记(其实我的所有笔记都是),并不会过于详细的讲解。因此如果有大家看不明白的地方,欢迎在我正版博客下留言,有时间的时候我很愿意来这里与大家探讨问题。(当然,不能是简简单单就可以百度到的问题-.-)
我所选用的教材是《The Django Book 2.0》,本节是我自己插入的数据库安装步骤,针对不大了解数据库安装的同学。
------------------------------------------------------------------------------------------------------------------------------------------------
0、说明
为了在Django中使用数据库,需要先安装并设置好,在《The Django Book 2.0》书中,默认大家已经安装好了自己想要使用的数据库,但实际上,并不是所有人都已经了解如何安装的,甚至还很困扰,并且很难查到适合自己的教程(我就是-.-)。
这里我来说明一下,在Django中使用数据库所需的准备工作。
首先是安装。我使用的数据库是MySQL,那么,就需要在机器上已经安装好MySQL,并安装好其服务器和客户端。然后,把MySQL-python这个库安装好,才能在python代码中使用MySQL。
而后是设置,先要在MySQL中有一个供你使用的用户和数据库(如果没有现成的,就得创建一个)。然后,需要在你的Django工程的settings.py中设置好关于数据库的全部设置,以定位到你所要使用的数据库以及用来使用它的用户。
最后是使用,只要数据库的服务器在运行,你就可以在Django中按照你之前的设置使用这个数据库了。
再啰嗦一句,下面的各种命令都是要在终端中输入的,不再赘述。
1、安装MySQL
我的MySQL版本是5.6.24。(我的全部工作环境配置信息,例如操作系统,已经在 Django笔记 —— 入门简介 中提到过,这里不再赘述)
想要查看自己机器里有没有的话,就在命令行中输入mysql,有反应就说明有。
没有的话,也无所谓,下面安装server的时候会自动安装的。
2、安装MySQL服务器和客户端
sudo apt-get install mysql-server
sudo apt-get install mysql-client
如果你之前机器中没有MySQL的话,在你安装server的时候会自动帮你安装,还会让你设置MySQL中的root密码,这在以后的MySQL使用中常常会使用到。
关于root用户,基本就和Linux的root用户感觉一样,这里简单解释一下。
使用MySQL时要用某个用户登录进去,每个用户都有自己的权限;而root则是里面最大权限的用户,拥有任何权限,可以管理所有其它用户。实际上,我们使用MySQL时,除了root用户之外,往往还要有另一个普通用户。平时使用时,就用那个普通用户;权限不够时,再上root。这样,可以避免你手一抖删掉不该删的东西~
3、安装MySQL-python
sudo pip install MySQL-python
注意大小写别写错了。
4、在MySQL中创建用户及数据库
现在你的MySQL已经安装好了,需要在MySQL中创建一个用户和一个数据库供Django使用。
先教一下用root登录数据库:
输入mysql -u root -p,然后输入你MySQL的root密码。
看到 mysql> 就说明你登录进去了,退出命令是exit,MySQL会和你说“Bye”。。
然后是新建用户:
1. 用root登录
2. 创建用户:insert into mysql.user(Host, User, Password) values("localhost", "qiqi", password("nicai"));
3. 刷新权限表:flush privileges;
这样就创建了一个名叫qiqi,密码是nicai的用户。这个用户的类型是localhost,即在本地登录的用户。具体内容不多说,学习Django这种用户足够了。
最后创建一个数据库:
1. 用root登录
2. 创建一个数据库:create database django;
这样就创建了一个名叫django的数据库。
还没完,最后还要给qiqi使用django这个数据库的权限:
1. 用root登录
2. 授予全部权利:grant all privileges on django.* to [email protected] identified by ‘nicai‘;
至此,你可以用qiqi这个用户直接登录MySQL并操作数据库django了,至于在Django中使用还需要下面的设置:
5、在Django中设置
打开你Django某个工程中的settings.py,找到 DATABASES 属性,把它设置成这样:
1 # Database 2 # https://docs.djangoproject.com/en/1.8/ref/settings/#databases 3 4 DATABASES = { 5 ‘default‘: { 6 ‘ENGINE‘: ‘django.db.backends.mysql‘, 7 ‘NAME‘: ‘django‘, 8 ‘USER‘: ‘qiqi‘, 9 ‘PASSWORD‘: ‘nicai‘, 10 ‘HOST‘: ‘127.0.0.1‘, 11 ‘PORT‘: ‘3306‘, 12 } 13 }
其中,因为我是在本机上操作的,所以HOST是这个;至于PORT,我是在网上搜索到的,应该是MySQL的默认端口。
这里注一句,大家看到代码开头那个网址没有?这就是Django对这个参数的说明文档链接。遇到问题,大家一定要善用文档!
6、运行数据库服务器
你安装好之后,MySQL的服务器每次开机都会自动运行的。所以这点可以略去。
7、尝试使用
在你刚才改settings.py的工程的根目录下,运行:python manage.py shell
如果可以正常进入,就说明Django已经可以通过settings.py中的设置定位到你在MySQL中要使用的用户和数据库了。
------------------------------------------------------------------------------------------------------------------------------------------------
至此,我们应该可以继续Django的学习了。
关于MySQL的内容,如果以后有机会用到或者大家有需要的话,我或许会写的。现在嘛,继续回归Django的学习。