创建Django项目
使用环境
- 前端:BootStrap框架
- 后端:MySQL数据库+Django
- IDE:PyCharm
- 编程语言:Python
前期准备
首先需要安装好mysql(或者连接别人的mysql服务也可以)在本地安装pycharm,然后在pycharm中安装3个包。如何安装?下载BootStrap框架,解压出来,拷贝到项目中。注意Django要用1.11.16的,版本不同连接mysql数据库会有问题。
包名称 | 描述 |
---|---|
Django | 一个开放源代码的Web应用框架,由Python写成。采用了MVC的框架模式,即模型M,视图V和控制器C |
requests | Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库 |
pymysql | 使Python连接到MySQL的库,它是一个纯Python库 |
开始吧
1、创建mysql数据库
(1)打开cmd,输入:mysql -u root -p
,回车,然后输入密码。
(2)先看一下都有哪些数据库,防止我们建立冲突了。输入show databases;
注意不要忘了分号
(3)创建数据库
在创建的时候指定默认字符集,防止由于安装配置不正确时,程序出现问题。
create database mydb default charset utf8;
2、创建Django项目
打开pycharm,按照如下图所示,创建项目。然后点击create
3、配置pymysql
在建立好的项目文件中,找到和项目同名的文件夹,在该文件夹中的需要分别对2个文件进行配置。
(1)配置__init__.py文件,写上这两条语句。
import pymysql
pymysql.install_as_MySQLdb()
(2)配置同文件夹下的settings.py文件
4、配置BootStrap(如果没有用,可以跳过,这是做前端页面需要的)
(1)创建存放一些静态的文件的文件夹,比如css、js等
(2)将下载好的BootStrap压缩包解压,解压后的文件夹拷贝到,新建好的文件夹下。
(3)在与项目名称同名的文件夹下的settings.py文件中最后面,添加以下语句。不配置会找不到文件,报404的错误。
5、建立登录页面(BootStrap页面)
怎么建立bootstrap页面就不详细写了,如果不会,可以先建立一个简单的html表单页面。注意,html页面要建立在templates文件夹下。
还有一点,form标签的action属性要写成这样:斜杠中的值代表views视图中对应的方法名字。
<form action="/login/" method="post">
6、使用ORM映射创建数据库表
(1)在models.py文件中,写user实体类
(2)写好之后,工具栏Tools → Run manager.py Task,在控制台,依次写入命令:①makemigrations,②migrate
(3)此时,如果没有报错,就证明表创建成功了,在cmd中查看。
(4)向app_user表中插入一条数据,让我们可以使用它进行登录。
7、写后端代码
(1)在views.py视图文件中写我们的方法,写一个登录的方法。注意需要导入HttpResponse模块和models模块
from django.shortcuts import render, HttpResponse
from app import models
# Create your views here.
def login(request):
if request.method == "GET":
return render(request, 'login.html')
else:
# 否则就是POST请求,获取表单中的数据
name = request.POST.get('name')
pwd = request.POST.get('password')
# 进行数据库的查询,如果不存在或报异常
try:
user_obj = models.User.objects.get(name=str(name), password=str(pwd))
except:
return HttpResponse("<script>alert('用户名或密码不正确');window.location.href='login.html'</script>")
return HttpResponse(user_obj.name + "您好,欢迎使用")
(2)在urls.py文件中写请求url导向,要导入我们的视图views模块
from django.conf.urls import url
from django.contrib import admin
from app import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url('', views.login),
# 将第一个参数设为空,可以指定默认页面
# views.login 是views模块中写的方法,注意不要带括号
]
8、运行
(1)点击右上角的运行,就可以看到控制台出现了一个服务地址,点开。
(2)进行登录
结束了,现在我们就可以搭建网站了,虽然只是一个简单的登录功能,但是原理都是想通的,万事开头难,第一步完成之后,后面的就都一样了。
关于:如果被禁止了,出现 forbid 的错误,就在html的form标签下加入
{% csrf_token %}