如何定义数据模型:

(1) 在 MVC 设计模式中,M 表示数据模型 ( Model ),负责业务对象与数据库的映射,我们可以通过应用的 models.py 来定义数据模型
(2) Model 采用了 ORM 技术,将关系型数据库表抽象成面向对象的 Python 类,将表操作转换成类操作,避免了复杂的 SQL 语句编写

[root@localhost web]$ cat blog/models.py
from django.db import models

//类名相当于数据表,类的属性相当于表的字段
class Host(models.Model):
hostname = models.CharField(max_length=50)
ip = models.IPAddressField()
[root@localhost web]$ python manage.py validate   # 检查定义的数据模型是否有问题
[root@localhost web]$ python manage.py syncdb # 根据数据模型创建/更新数据库
# 默认使用SQLite数据库,如果要使用别的数据库,需要在项目的setting文件中指定
# 在更新数据库时,会创建一个管理后台,我们需要设置用户名密码,以便后续登录管理后台

如何访问数据库:

[root@localhost web]$ python manage.py dbshell    # 进入数据库
sqlite> .help # 查看帮助命令
sqlite> .tables # 查看有哪些表
sqlite> select * from blog_host; # 查询表数据

扩展:如何使用 MySQL 作为数据库

[root@localhost web]$ cat web/settings.py

......

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 指定使用MySQL数据库
'NAME': 'web', # 指定库名
'USER': 'root', # 指定连接MySQL的用户
'PASSWORD': 'xxxx', # 指定连接MySQL的用户密码
'HOST': '127.0.0.1', # 指定MySQL所在的主机
'PORT': '', # 指定MySQL端口
}
}
[root@localhost web]$ yum install -y MySQL-python.x86_64    # 需要安装MySQLdb模块,用于Django连接MySQL数据库
[root@localhost web]$ cat blog/models.py     # 定义数据模型
from django.db import models
class Host(models.Model):
hostname = models.CharField(max_length=50)
ip = models.IPAddressField()
[root@localhost web]$ python manage.py validate   # 检查数据模型
[root@localhost web]$ python manage.py syncdb # 同步到数据库

Django 定义数据模型的更多相关文章

  1. Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块

    Python第十三天   django 1.6   导入模板   定义数据模型   访问数据库   GET和POST方法    SimpleCMDB项目   urllib模块   urllib2模块 ...

  2. Django 定义视图函数

    Django 定义视图函数 一.接收内容及文件处理 1.接收分类 # 获取数据 request.GET # 提交数据 request.POST # 获取文件 request.FILES 2.check ...

  3. ASP.NET MVC扩充数据模型-定义数据模型的Metadata

    ASP.NET MVC扩充数据模型-定义数据模型的Metadata Posted on 2018-07-12 by Wang Kepai     Rate this post 无论你是使用LINQ t ...

  4. django定义模型类-14

    目录 1. 定义 字段类型 约束类型 django的模型类定义在应用下的 models.py 文件中. 模型类继承自 django.db.models 包下的 Model 类. 新创建应用 book ...

  5. django定义模型类

    模型类被定义在应用文件夹下的model.py中 模型类必须继承Django的models.Model类 属性名不能用连续的两条下划线__ 主键:primary key,简写 pk 不需要主动定义,dj ...

  6. Define the Data Model and Set the Initial Data 定义数据模型并设置初始数据

    This topic describes how to define the business model and the business logic for WinForms and ASP.NE ...

  7. Django定义全局变量

    定义全局变量,在项目的任何位置都可以获取到变量的值 在include App=>include文件夹下=>context_processors.py 里定义需要获取的变量 #!/usr/b ...

  8. django定义Model中的方法和属性

    #定义一个Model class UserProfile(models.Model): user=models.OneToOneField(User,unique=True) phone=models ...

  9. django之数据模型类的字段分析

    一:表一的字段分析 class Sheep_Area(models.Model):# models.AutoField()自增列,要显示自定义的自增列,必须定义primary=True# area_i ...

随机推荐

  1. js实例属性和原型属性

    <!DOCTYPE html> <html> <head>     <meta charset="UTF-8">     <t ...

  2. 10、QT分析之WebKit

    该文章整理自 网易博客 http://blog.163.com/net_worm/blog/static/12770241920101831312381/ 转载请注明出处 WebKit是QT4新整合的 ...

  3. linux mongodb数据库的安装

    折腾两天, 前领导留下的烂摊子,前天忽然挂掉了, 整个公司就我会linux, 奶奶的, 一言难尽. 下面记录下怎么安装mongodb, 前面是从菜鸟教程复制来的 1. 下载 MongoDB 提供了 l ...

  4. 【Python】python3.6 操作mysql

    1.首先安装mysqldb 下载 mysqldb 使用命令 pip3 install mysqlclient-1.3.12-cp36-cp36m-win32.whl 下载地址: mysqlclient ...

  5. 转换基于Maven的Web应用程序支持Eclipse IDE

    在上一节教程中,使用Maven创建了一个Web应用程序.这里有一个指南,告诉你如何转换Web应用程序到Eclipse IDE支持的形式. 注意,通过WTP工具Eclipse IDE支持Web应用程序, ...

  6. unity5x --------Music Mixer参数详解

      我们一直在致力开发出业界最顶尖水准音频处理功能,而经过很长一段时间的努力,在Unity5.0中,音频处理功能将成为非常重点的一个功能. 要达成这个目标,我们首先重写了很多Unity中音频相关得处理 ...

  7. 嵌入式开发之hi3519--- pcie dma和dma cache 缓存更新sync memery

    http://blog.csdn.net/likeping/article/details/42235111 linux下dma 管理 http://blog.csdn.net/skyflying20 ...

  8. Eclipse使用资源管理器打开选中文件/目录

  9. Linux Shell的 & 、&& 、 ||

    Linux Shell的 & .&& . || 收藏 hanzhankang 发表于 3年前 阅读 18472 收藏 20 点赞 4 评论 0 开程序员的淘宝店!寻找开源技术服 ...

  10. SqlException with message "Caught java.io.CharConversionException." and ERRORCODE=-4220

    Technote (troubleshooting) Problem(Abstract) When an application uses the IBM Data Server Driver for ...