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 时间处理datetime实例
Sep 06 Python
深入解析Python编程中JSON模块的使用
Oct 15 Python
python生成随机图形验证码详解
Nov 08 Python
使用Python制作自动推送微信消息提醒的备忘录功能
Sep 06 Python
使用Python计算玩彩票赢钱概率
Jun 26 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
Oct 18 Python
tensorflow使用指定gpu的方法
Feb 04 Python
python实现将range()函数生成的数字存储在一个列表中
Apr 02 Python
协程Python 中实现多任务耗资源最小的方式
Oct 19 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
Dec 17 Python
如何用tempfile库创建python进程中的临时文件
Jan 28 Python
python Polars库的使用简介
Apr 21 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
BBS(php & mysql)完整版(八)
2006/10/09 PHP
PHP在字符串中查找指定字符串并删除的代码
2008/10/02 PHP
浅析51个PHP处理字符串的函数
2013/08/02 PHP
在WordPress中实现发送http请求的相关函数解析
2015/12/29 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
javascript replace方法与正则表达式
2008/02/19 Javascript
为超链接加上disabled后的故事
2010/12/10 Javascript
Extjs中使用extend(js继承) 的代码
2012/03/15 Javascript
jquery按回车提交数据的代码示例
2013/11/05 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
2014/01/02 Javascript
Webwork 实现文件上传下载代码详解
2016/02/02 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
html中鼠标滚轮事件onmousewheel的处理方法
2016/11/11 Javascript
深入学习Bootstrap表单
2016/12/13 Javascript
微信小程序通过api接口将json数据展现到小程序示例
2017/01/20 Javascript
js 数据存储和DOM编程
2017/02/09 Javascript
解决node修改后需频繁手动重启的问题
2018/05/13 Javascript
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
10分钟彻底搞懂Http的强制缓存和协商缓存(小结)
2018/08/30 Javascript
微信小程序云开发之云函数详解
2019/05/16 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
vue实现循环滚动列表
2020/06/30 Javascript
Python3实现连接SQLite数据库的方法
2014/08/23 Python
Python使用matplotlib绘制动画的方法
2015/05/20 Python
python实现俄罗斯方块
2018/06/26 Python
python实现flappy bird游戏
2018/12/24 Python
使用Django2快速开发Web项目的详细步骤
2019/01/06 Python
pycharm快捷键汇总
2020/02/14 Python
Python约瑟夫生者死者小游戏实例讲解
2021/01/04 Python
CSS3常用的几种颜色渐变模式总结
2016/11/18 HTML / CSS
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
仿CSDN Blog返回页面顶部功能实现原理及代码
2013/06/30 HTML / CSS
遗产继承公证书
2014/04/09 职场文书
保密工作目标责任书
2014/07/28 职场文书
超市仓管员岗位职责范本
2014/09/18 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书