python Django连接MySQL数据库做增删改查


Posted in Python onNovember 07, 2013

1、下载安装MySQLdb类库
http://www.djangoproject.com/r/python-mysql/
2、修改settings.py 配置数据属性

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'djangodb',                      # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': 'root',
        'PASSWORD': 'root',
        'HOST': '127.0.0.1',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '3306',                      # Set to empty string for default.
    }
}

修改完后进入DOS进入项目目录下执行python manage.py shell命令启动交互界面输入一下代码验证数据库配置是否成功。没报错则成功!
>>> from django.db import connection
>>> cursor = connection.cursor()

 3、创建一个Django app
一个项目中包含一个或多个这样的app。app可以理解为一块功能集合。比如产品管理模块就包含增删该查等功能,可以把产品管理叫做一个app。每个Django app都有独立的models,views等,易移植和被复用。
DOS进入项目目录 执行 python manage.py startapp products生成目录文件如下:
products/
    __init__.py
    models.py
    tests.py
    views.py

 4、编写models
from django.db import models
# Create your models here.
class Company(models.Model):
    full_name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    tel = models.CharField(max_length=15,blank=True)
class Product(models.Model):
    product_name = models.CharField(max_length=30)
    price = models.FloatField()
    stock = models.IntegerField(max_length=5)
    company = models.ForeignKey(Company)

 5、模型安装(修改settings.py)
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
     'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
     'django.contrib.admindocs',
    'DjangoMysqlSite.products',
)

采用 python manage.py validate 检查模型的语法和逻辑是否正确。
没有错误则执行 python manage.py syncdb创建数据表。
现在你可以看到你的数据库除了生成了products_company,products_product外还创建了其它好几个表,这些是django管理后台所需表暂不管。

6、简单的增删改查
 进入python manage.py shell

from DjangoMysqlSite.products.models import Company
>>> c = Company(full_name='集团',address='杭州西湖',tel=8889989)
>>> c.save()>>> company_list = Company.objects.all()
>>> company_list
>>> c = Company.objects.get(full_name="集团")
>>> c.tel = 123456
>>> c.save()
 

>>> c = Company.objects.get(full_name="集团")
>>> c.delete()
#删除所有
>>> Company.objects.all().delete()
Python 相关文章推荐
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
Jun 04 Python
Python socket实现简单聊天室
Apr 01 Python
Python 批量合并多个txt文件的实例讲解
May 08 Python
Python运行不显示DOS窗口的解决方法
Oct 22 Python
Python判断一个三位数是否为水仙花数的示例
Nov 13 Python
Django模板语言 Tags使用详解
Sep 09 Python
Python django框架输入汉字,数字,字符生成二维码实现详解
Sep 24 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
Mar 31 Python
Numpy一维线性插值函数的用法
Apr 22 Python
pandas处理csv文件的方法步骤
Oct 16 Python
Python实现一个论文下载器的过程
Jan 18 Python
Python自动化测试基础必备知识点总结
Feb 07 Python
使用Python下载Bing图片(代码)
Nov 07 #Python
python中文乱码的解决方法
Nov 04 #Python
python Django模板的使用方法(图文)
Nov 04 #Python
使用python Django做网页
Nov 04 #Python
教你安装python Django(图文)
Nov 04 #Python
python条件和循环的使用方法
Nov 01 #Python
讲解python参数和作用域的使用
Nov 01 #Python
You might like
php 无限极分类
2008/03/27 PHP
php session应用实例 登录验证
2009/03/16 PHP
理解php原理的opcodes(操作码)
2010/10/26 PHP
php获取网页请求状态程序示例
2014/06/17 PHP
十个PHP高级应用技巧果断收藏
2015/09/25 PHP
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
让你的博客飘雪花超出屏幕依然看得见
2013/01/04 Javascript
node.js中的buffer.fill方法使用说明
2014/12/14 Javascript
Javascript编程之继承实例汇总
2015/11/28 Javascript
清除输入框内的空格
2016/12/21 Javascript
js实现textarea限制输入字数
2017/02/13 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
浅谈vue项目打包优化策略
2018/09/29 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
vue 解决兄弟组件、跨组件深层次的通信操作
2020/07/27 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
[02:43]DOTA2亚洲邀请赛场馆攻略——带你走进东方体育中心
2018/03/19 DOTA
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
python常用知识梳理(必看篇)
2017/03/23 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
Python使用POP3和SMTP协议收发邮件的示例代码
2019/04/16 Python
使用浏览器访问python写的服务器程序
2019/10/10 Python
浅谈基于Canvas的手绘风格图形库Rough.js
2018/03/19 HTML / CSS
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
SKECHERS斯凯奇中国官网:来自美国的运动休闲品牌
2018/11/14 全球购物
ABOUT YOU匈牙利:500个最受欢迎的时尚品牌
2019/07/19 全球购物
太太口服液广告词
2014/03/20 职场文书
“四风”查摆问题自我剖析材料
2014/09/27 职场文书
董事长秘书工作总结
2015/08/14 职场文书
Python数据分析之绘图和可视化详解
2021/06/02 Python
Python+Selenium自动化环境搭建与操作基础详解
2022/03/13 Python
Python装饰器详细介绍
2022/03/25 Python
python 离散点图画法的实现
2022/04/01 Python
宝塔更新Python及Flask项目的部署
2022/04/11 Python