Django项目创建之---Models(三)

此文是继承博主的上一篇博客:http://blog.csdn.net/yuzhengfei7/article/details/78259147


Django中的Models是什么?
通常,一个Model对应数据库的一张数据表
Django中的Models以类的形式表现
它包含了一些基本字段以及数据的一些行为
这种框架结构称为ORM


ORM(对象关系映射Object Relation Mapping):实现了对象和数据库之间的映射,隐藏了数据访问的细节,不需要编写SQL语句。白话一点,就是Django把和数据库交互的语句封装起来了。
这种框架给我们的开发带来了极大的便利。


编写Models,步骤:
1.在应用根目录下创建models.py(Django在帮我们创建应用的时候已经帮我们创建了),并引入models模块
2.创建类,继承models.Medel,该类即是一张数据表
3.在类中创建字段,字段即类里面的属性(变量),字段的可选参数可以上Django的官方网站查看
代码如下:

from __future__ import unicode_literals

from django.db import models

from django.db.models import Model

class Article(models.Model):
    title = models.CharField(max_length=32, default='Title')  # max_length为约束长度,default为默认值
    content = models.TextField(null=True)  # null=True为允许为空

生成数据表,步骤:
1.cmd进入manage.py同级目录,执行

python manage.py makemigrations app名(可选)

如果不写这个app名的话,就是默认的为该项目下所有的应用都生成数据迁移
2.再执行

python manage.py migrate //做迁移动作

3.查看是否迁移成功:Django会自动在app/migrations/目录下生成移植文件,可以进入项目中对应的文件夹中进行查看
5.查看SQL语句:执行

python manage.py sqlmigrate app名 文件id

前几步的效果如下图:
这里写图片描述

6.查看并编辑db.sqlite3(此文件在项目目录中,进入即可看见)
使用第三方软件:SQLite Expert Personal(下载地址:http://www.sqliteexpert.com/download.html自行选择版本下载),此工具强烈推荐使用,因为它是一个轻量级而且完全免费的软件!
7.进入SQLite,找到blog_article,对表进行数据的添加


页面数据呈现,步骤:
1.进入views.py文件中,编写代码:

from sys import modules
from django.shortcuts import render   # render为Django自动添加,render为渲染
from django.http import HttpResponse

from . import models  # 引入models

def index(request):
    article = models.Article.objects.get(pk=1) # 拿到id=1的数据
    return render(request, 'index.html', {'article': article})

2.前端步骤:模板可以直接使用对象以及对象的"."操作。
进入index.html文件中,编写代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>{{ article.title }}</h1>
<h3>{{ article.content }}</h3>
</body>
</html>

最后:打开浏览器,地址栏输入localhost:8000/blog/index,出现如下效果 ,则证明Models已经成功实现。
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值