超实用搭建个人开发Web网页的软件及配置基础(Django+My
临近开学,作者即将给本科生传授Linux、Python和软件开发相关的课程。因此,今特意腾出时间补一些Python写网页的知识。今儿就是写出一份小白(希望作者未来的学生能够看着本教程贴就能够自己上手是作者的初衷哈)也能入门的Web开发的一些基础必备技能。这里以Python的Django库为对象进行演示。目的是写出一个十分实用的教程,之后有时间,作者会专门写一个关于Python写Web的一些库的发展历史及优缺点的比较(因为这才是一门课的开头嘛)。但读者相信用Django没错就对了!
本文主要分三部分进行演示:
1)PyCharm(这个更多的人应该是念pi Charm哈,作者以前老念P y Charm,当然看自己个人,作者觉得怎么叫都行,哈哈,开心就好!)搭建虚拟环境。
为什么要搭建虚拟环境呢?在做应用程序开发的时候不可避免地会遇到不同的应用程序依赖不同的包版本的情况。这样就有可能会出现依赖冲突的问题,特别是时间长了之后,这种情况会变得更糟。比较切身的体会就是,当你用前辈写的代码,你会报错,因为现在都用Python3以上的版本了,结果前辈用的Python2写的,这样就会因为Python 2和Python 3的语法不兼容报错了。那为了前辈写的代码自己能用Python2运行,自己用Python3编写的代码也能够正常运行,那就可以通过在相互独立的虚拟环境运行来满足你的需求。而我们用到的是Virtualenv这个包(图2)。
首先,打开你的PyCharm,如果不会安装PyCharm,可以在网上搜寻一下PyCharm的安装步骤(作者有时间可以单独写一个简单的教程,但这个安装PyCharm应该是一件简单的事情,最好能自己独立完成)。然后按照图1,图2,图3的步骤进行操作。



这样就创建好了一个虚拟环境。
接着在新创建的虚拟环境中打开Terminal(终端-也相当于你在cmd里到指定文件夹位置的效果),输入pip install django -i https://pypi.douban.com/simple/ (这里科普一些基本知识:pip是目前比较流行的Python包管理工具,且它已经内置到Python 3.4及以上版本中了,所以,读者要安装Python 3.4及以上版本的Python包,-i https://pypi.douban.com/simple/ 这个是由于Python的网站在国外,很多时候往往下载速度很慢,这个是国内的镜像,这里选的是豆瓣镜像。这样下载速度就很快了!)(图4)

这样就把Django包安装好了。
2)接着是Window10系统的MySQL安装及配置了(重点来了)。MySQL提供了两种安装文件,一种是需要再去配置的压缩包(https://dev.mysql.com/downloads/mysql/)(图5),另一种是可以直接运行的安装包(https://dev.mysql.com/downloads/installer/)(图6)。本质是一样的。为了方便,选择直接运行的安装包是比较适合小白的,图6中有两个包,建议下载450.7M的,因为内置的包全面,不用安装的时候再在线下载,这样安装会快很多。本教程用的MySQL安装包是最新的(2021年8月31日),有需要的可以从以下获取:链接:https://pan.baidu.com/s/1hKsThAUxB3YHGSImr13O2g
提取码:cujv


为了方便,仅仅下载,不登录和注册

双击下载的MySQL安装程序,一路默认就好,可能会弹出一些警告窗口(比如缺乏什么环境之类的,也直接点击YES按钮),中途会有一些安装程序,可能会经过漫长的等待,这个时候就是说要耐心的等待。。。(总结起来就是看见Next、YES、Check、Excute、Finish按钮就点击)。到了下面这个页面(图8),点击第二个吧,因为出于兼容性考虑。然后是设置root密码。这个不能忘,后面要用(图9)。之后也都是一路默认(图10—图17)。









把安装好的MySQL的bin文件夹添加到环境变量(此电脑—>属性—>高级系统设置—>环境变量—>新建)

到图17完成后就算把MySQL数据库在Win10系统中安装配置好了。
安装MySQL时根据提示创建了root账户,root权限太大,它不适合作为生产环境的账户使用。因此需要创建一个用户(图18)。并授予一定的权限,用于将来的应用程序开发(当然读者要是为了方便,直接用root,这也是读者自己做决定的事)。MySQL的语法命令记得末尾加; 这点跟C语言一样哈!
mysql -u root -p
create database myFamilyTool;
create user work identified by 'myFamilyTool';
grant all on myFamilyTool.* to 'work'@'%' with grant option;

exit;
mysql -u work -p myFamilyTool

在MySQL的GUI界面窗口中登录查看(MySQL Workbench)(图20,图21)


3)至此,就可以开始玩Django了。。。
django-admin startproject 项目名称 (图22)

python manage.py runserver (启动内置的服务器运行当前的项目)(图23)
可以看到有警告信息。

在浏览器中输入http://127.0.0.1:8000/ (图24)

到图24是不够的,如果试着登录以下http://127.0.0.1:8000/admin/,会没有显示的。
为了真正的做到可以自己搭建个人的Web网页,还需要以下几个步骤操作:
pip install pyMySQL -i https://pypi.douban.com/simple/

在Django项目chlforgf中找到settings.py,找到DATABASES这个字典,原先的替换为图26的样子。
# 数据库配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 数据库的类型,默认的是sqlite3
'NAME': 'myFamilyTool', # 所使用的数据库的名字,就刚才创建的嘛
'USER': 'work', # 数据库用户名
'PASSWORD': 'myFamilyTool', # 数据库密码
'HOST': '127.0.0.1', # 数据库服务器地址,这里使用本地开发环境
'PORT': '3306', # 数据库服务器端口号,MySQL默认为3306
}
}

然后是数据库的迁移(图28):
python manage.py migrate

终端都显OK那就是迁移成功了,不放心可以在GUI界面查看一下,
到MySQL Workbench界面查看(图28)

迁移成功后就可以再次运行服务器(图29):
python manage.py runserver (补充一个知识点:除了使用runserver启动项目之外,还可以使用shell命令(python manage.py shell)进入当前项目的环境)

开启服务器之后,就可以访问这个网址了,这个时候需要创建一个超级用户来管理后台。。(图30)。

先ctrl+c退出
然后输入一下命令 (图31)
python manage.py createsuperuser --username=chenhuilong --email=chenhuilong131@163.com

再次运行服务器(python manage.py runserver)并在浏览器输入那个网址,进入之后,输入刚才设置的超级用户名和密码(图32):

这样就进入了Django内置的后台管理界面了(图33)。。。

至此,就搭建好了个人开发Web网页的软件及配置基础了。接下来就可以开始尝试搭建自己的Web页面了(图34),具体怎么操作,作者后续再来。。。
