Django学习一
一、利用pycharm创建django工程
1.点击File–>new project–>Django写上工程名
2.创建完成后
3.测试
4.在网页输入localhost:8080
二、django连接mysql数据库
1.链接数据库之前,先准备好mysql数据库
第一步:设置数据库链接
找到工程目录下的settings.py文件,并打开,找到DTABASE,然后将以下代码修改进去,注意:链接数据库的信息,是根据自己要链接数据库的信息而填写
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'peng',#数据库名
'USER':'root',#用户名
'PASSWORD':'123',#密码
'HOST':'localhost',#数据库地址
'PORT':'3306'#端口号
}
}
第二步:工程加载数据库
找到工程目录下__init__.py文件,并打开然后添加以下代码
import pymysql
pymysql.install_as_MySQLdb()
注意:如果发现工程有错说明没有下载mysql包
方法1:file–>settings–>project interpreter在搜索框中输入PyMySql点击install
方法2:在Terminal中输入命令下载
导入成功后,启动工程测试
第四步:创建数据库表模型
先找到项目(myweb)目录下的models.py
点击打开,将以编写第一个用户表的模型myweb_user,对应的是数据库表,
注意一点:django框架数据库表有他自己的命名规则,一般情况下表的名称是:项目名称_表名称。例如myweb_user
from django.db import models
class User(models.Model):
# 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列
id = models.AutoField(primary_key=True)
# 类里面的字段代表数据表中的字段(username),数据类型则由CharField(相当于varchar)
username = models.CharField(max_length=100)
# 密码
password = models.CharField(max_length=100)
#x性别
sex =models.CharFiled(max_length=100)
#电话
tel =models.CharFiled(max_length=100)
第五步:为数据库创建表,并同步数据
右键点击你的工程,找到open in Terminal,然后输入python manage.py makemigrations,发现多出如图两个文件
接下来创建表结构并同步到数据库,输入python manage.py migrate
完成后,打开数据库查看,将会多了很多表,其中有一张刚刚写的user类生成的表(web_user)
第六步:编写从web_user获取数据,并显示到页面上
1、在views.py编写业务代码
from django.shortcuts import render
from django.shortcuts import render
#页面查询用户信息
def queryUsers(request):
#到数据库查询用户信息
us = User.objects.all()
#将数据发给页面
context = {"ls": us}
return render(request, "users.html", context)
2、编写页面users.html
在工程目录下找到templates,然后新建user.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Users</title>
</head>
<body>
<table border="1">
<thead>
<tr>
<th>ID</th>
<th>名称</th>
<th>sex<th>
<th>age<th>
<th>tel<th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for row in ls %}
<tr>
<td>{{ row.id }}</td>
<td>{{ row.username }}</td>
<td>
<a href="#?nid={{ row.id }}">删除</a>
|
<a href="#?nid={{ row.id }}">编辑</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
3、添加访问路径
打开urls.py添加代码
from django.contrib import admin
from django.urls import path
from web import views
urlpatterns = [
path('admin/', admin.site.urls),
path('users/', views.queryUsers),
]
4、启动项目
发现成功连接数据库后在浏览器输入localhost:8000/users/
此时是没有数据的,可以在数据库中添加数据