Worth Waiting For

ORM学员管理系统

1.使用MySQL自己创建一个数据库,以下例为例

CREATE DATABASE orm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

2.在项目的settings.py文件中进行数据库链接信息

# 修改django默认的数据库的sqlite3为mysql
DATABASES = {
    'default': {
            'ENGINE': 'django.db.backends.mysql', #通过这个去链接mysql
            'NAME': 'djangotsgl',
            'USER':'root',
            'PASSWORD':'123456',
            'HOST':'localhost',
            'PORT':'3306',
        }
    }            

3.在项目下的__init__文件中写入以下命令

import pymysql
pymysql.install_as_MySQLdb()

4.在项目下的models.py文件中创建表数据

models.py

class Book(models.Model):  #必须要继承的
    nid = models.AutoField(primary_key=True)  #自增id(可以不写,默认会有自增id)
    title = models.CharField(max_length=32)
    publishDdata = models.DateField()  #出版日期
    author = models.CharField(max_length=32)
    price = models.DecimalField(max_digits=5,decimal_places=2)  #一共5位,保留两位小数

5.进行数据库迁移并形成相关数据

python manage.py makemigrations   记录models.py中的改动,具体的记录在案
python manage.py migrate   把相关的改动翻译成SQL语句并执行

6.在url文件中进行相关的路径配置

  先从APP中导入与路径相匹配的视图函数

from app01 import views

  将路径和试图函数的对应关系配置好

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^classes_list/', views.classes_list),

]

  进行相关的业务逻辑处理

APP/views.py

先导入相关所需模块儿

from django.shortcuts import render,redirect,HttpResponse
from .models import Classes

进行相关业务逻辑处理

def classes(request):
    data = Classes.objects.all()   # 获取数据库中的相关数据
    return render(request,'classes_list.html',{'data':data}) #将数据展示到页面

在templetes文件中进行页面渲染

class_list.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>班级表</title>
</head>
<body>
<a href="#">添加班级</a>
<table border="1">
<thead>
<th>ID</th>
<th>班级名称</th>
<th>操作</th>
</thead>
<tbody>
{% for class in data %}
<tr>
<td>{{ class.id }}</td>
<td>{{ class.name }}</td>
<td>
<a href="#">删除</a>
</td>
<td>
<a href="#">编辑</a>
</td>
</tr>
{% endfor %}

</tbody>
</table>
</body>
</html>

 

posted on 2018-05-31 19:24  WorthWaitingFor  阅读(577)  评论(0编辑  收藏  举报

导航