Django 定义数据模型
如何定义数据模型:
(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 定义数据模型的更多相关文章
- Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块
Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 ...
- Django 定义视图函数
Django 定义视图函数 一.接收内容及文件处理 1.接收分类 # 获取数据 request.GET # 提交数据 request.POST # 获取文件 request.FILES 2.check ...
- ASP.NET MVC扩充数据模型-定义数据模型的Metadata
ASP.NET MVC扩充数据模型-定义数据模型的Metadata Posted on 2018-07-12 by Wang Kepai Rate this post 无论你是使用LINQ t ...
- django定义模型类-14
目录 1. 定义 字段类型 约束类型 django的模型类定义在应用下的 models.py 文件中. 模型类继承自 django.db.models 包下的 Model 类. 新创建应用 book ...
- django定义模型类
模型类被定义在应用文件夹下的model.py中 模型类必须继承Django的models.Model类 属性名不能用连续的两条下划线__ 主键:primary key,简写 pk 不需要主动定义,dj ...
- 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 ...
- Django定义全局变量
定义全局变量,在项目的任何位置都可以获取到变量的值 在include App=>include文件夹下=>context_processors.py 里定义需要获取的变量 #!/usr/b ...
- django定义Model中的方法和属性
#定义一个Model class UserProfile(models.Model): user=models.OneToOneField(User,unique=True) phone=models ...
- django之数据模型类的字段分析
一:表一的字段分析 class Sheep_Area(models.Model):# models.AutoField()自增列,要显示自定义的自增列,必须定义primary=True# area_i ...
随机推荐
- MATLAB2012a_for_win7_64
matlab 2012b是mathworks官网发布的一款功能强大.性能稳定的商业数学软件,新版本采用了全新的视图界面,具有MATLAB和Simulink的重大更新,可显著提升用户的使用与导航体验.比 ...
- Controllerizing the ScrollViewer Thumbnail
In the last post we created a ScrollViewer Thumbnail feature using a just a bit of Xaml and databind ...
- 定义与声明、头文件与extern总结
用#include可以包含其他头文件中变量.函数的声明,为什么还要extern关键字? 如果我想引用一个全局变量或函数a,我只要直接在源文件中包含#include<xxx.h> (xxx ...
- 使用VS2012生成DLL文件(1)
文章转载自:1. http://blog.sina.com.cn/s/blog_45bcb4c3010140b3.html 一:生成DLL 1:创建DLL工程 文件->新建->项目-> ...
- android 在HTML中显示bitmap
逻辑:将bitmap转化为Base64,通过调用HTML中的JS,显示到HTML中 (1)android代码 public String bitmaptoString(Bitmap bitmap) { ...
- ubuntu lapack安装与使用
https://blog.csdn.net/zouyu1746430162/article/details/53374693 https://blog.csdn.net/mlnotes/article ...
- (笔记)Mysql命令select:当前选择(连接)的数据库
select命令表示当前选择(连接)的数据库. select命令格式:mysql> select database(); MySQL中SELECT命令类似于其他编程语言里的print或者writ ...
- (笔记)Linux线程编译undefined reference to 'pthread_create'
在使用线程时,使用gcc或arm-linux-gcc编译时,会出现错误:undefined reference to 'pthread_create' 主要是以下两种原因: 1.#include &l ...
- 嵌入式开发之hi3519---网络不通问题rmii
http://www.ebaina.com/bbs/forum.php?mod=viewthread&tid=18092&extra=page%3D1%26filter%3Dtypei ...
- Saltstack配置管理
制作简单初始化模块(在minion主机安装软件): 1.定义master配置文件file_roots [root@localhost~]# cat /etc/salt/master file_root ...