django连接mysql数据库,框架映射数据库模型,省掉sql语句哦

新建一个django项目:

如下图,

添加项目目录文件:test_db,(如果文件不存在,会在该目录下新建一个文件夹)

设置app名称:testdb,在新的窗口打开项目,如图所示

其中,MVC模式中,models.py用于处理M,views.py用于处理V,urls.py用于映射视图。

1.下载pymysql:pip install pymysql

2.在项目__init__.py里添加(不是):

import pymysqlpymysql.install_as_MySQLdb()如图所示:

models.py中定义数据库表的字段:

from django.db import models
class Publisher(models.Model):    name = models.CharField(max_length=30)    address = models.CharField(max_length=50)    city = models.CharField(max_length=60)    state_province = models.CharField(max_length=30)    country = models.CharField(max_length=50)    website = models.URLField()    def __unicode__(self):        return self.name在mysql中事先建立一个数据库,比如:book,然后修改setting.py中DATABASE如下:
DATABASES = {    ‘default‘: {        ‘ENGINE‘: ‘django.db.backends.mysql‘,        ‘NAME‘:‘book‘,        ‘USER‘:‘root‘,        ‘PASSWORD‘:‘lyf123‘,        ‘HOST‘:‘127.0.0.1‘,        ‘POST‘:‘3306‘,       # ‘ENGINE‘: ‘django.db.backends.sqlite3‘,        #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),    }}经过以上两个步骤,然后通过命令查看models.py对应的sql语句,命令如下:python manage.py sqlall testdb(项目名)(如果出现:App ‘testdb‘ has migrations的错误,只要将migrations文件删除即可),如下图所示:

然后通过命令python manage.py syncdb同步数据库,创建表,结果如下图:

启动mysql,输入对应的命令查看是否建立了该表和对应的字段。在views.py中添加视图处理:
from .models import Publisherfrom django.shortcuts import render_to_responsedef book_list(request):    names = Publisher.objects.all()    return render_to_response(‘book_list.html‘, {‘names‘: names})在urls.py中添加url映射:
url(r‘^book/‘,views.book_list),在templates中加入两个html文件:#base.html
<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>       {% block title %}{% endblock %}    </title></head><body>   <h1>My book Site</h1>    <hr>    {% block content %}{% endblock %}    {% block footer %}    <p>Thanks for visiting my site.</p>    {% endblock %}</body></html>

#book_list.html
{% extends ‘base.html‘ %}{% block title %}title: book_lib{% endblock %}{% block content %}<table>   <tr><th>name</th><th>address</th><th>city</th<th>country</th><th>website</th></tr>   {% for m in names %}     <tr>     <td >  {{ m.name }}    </td>      <td > {{ m.address }}  </td>     <td >  {{ m.city }}    </td>      <td>{{m.country }}</td>     <td>{{ m.website }}</td>   </tr>     {% endfor %}  </table> {% endblock %}
运行django server,结果如下:

PS:表中的数据是通过mysql命令窗口自己胡乱写进去,用于测试的总结:这个例子是对django框架原理比较直观,简单的记录,还未涉及到对数据库进行增,删,改,查的操作
时间: 2024-10-07 11:30:20

django连接mysql数据库,框架映射数据库模型,省掉sql语句哦的相关文章

MySQL学习笔记_12_Linux下C++/C连接MySQL数据库(二) --返回数据的SQL

 Linux下C++/C连接MySQL数据库(二) --返回数据的SQL 引: 返回数据的SQL是指通过查询语句从数据库中取出满足条件的数据记录 从MySQL数据库值哦功能检索数据有4个步骤: 1)发出查询 2)检索数据 3)处理数据 4)整理所需要的数据 用mysql_query()发出查询,检索数据可以使用mysql_store_result()或mysql_use_result(),取决与怎样检索数据,接着是调用mysql_fetch_row()来处理数据,最后,还必须调用mysql_

django连接mysql数据库,往数据库表中添加字段

1.在数据库已经连接好,并激活的情况下 2.在models已经写好之后 3.对manage的操作: python manage.py validate   验证模型的有效性,validate 命令检查你的模型的语法和逻辑是否正确 python manage.py sqlall chapter3(项目名)   查看对应的sql语句,可以将其复制到mysql命令客户端,用于创建对应的表,也可以用命令执行: python manage.py syncdb  同步数据库,创建表 4.往对应模块添加字段对

python3下django连接mysql数据库

1.安装pymysql pip install pymysql 有一点需要注意,有的系统(比如ubuntu16.04)同时安装了python2和python3,而比较新的django需要在python3下运行,所以在安装pymysql时可能要使用命令 pip3 install pymysql 进行安装. 2.修改项目settings.py 找到并修改DATABASES为如下形式: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.m

MySQL数据库实现分页查询的SQL语句写法!

一:分页需求: 客户端通过传递start(页码),limit(每页显示的条数)两个参数去分页查询数据库表中的数据,那我们知道MySql数据库提供了分页的函数limit m,n,但是该函数的用法和我们的需求不一样,所以就需要我们根据实际情况去改写适合我们自己的分页语句,具体的分析如下: 比如: 查询第1条到第10条的数据的sql是:select * from table limit 0,10;   ->对应我们的需求就是查询第一页的数据:select * from table limit (1-1

Django连接MySQL数据库

1.修改settings.py 配置数据属性 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'fruitdb', 'USER': 'root', 'PASSWORD':'hellosandy', } } 修改完后进入终端进入项目目录下执行python manage.py shell命令启动交互界面输入一下代码验证数据库配置是否成功.没报错则成功! >>> from django.db im

django 连接mysql 数据库

1.新建一个mysite项目:django-admin startproject mysite 2.进入项目目录,新建一个app : python manage.py startapp polls 3.安装mysqlclient :pip install mysqlclient 4.在settings.py  database中设置数据库连接配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'm

java连接mysql数据库的方式(4句语句)

1 加载mysql驱动: class.forName("con.mysql.jdbc.Driver").newInstance(); 2 根据数据库路径url,账号,密码进行数据库连接: connection con=DriverManager.getconnection(url,"root","s123"); 3 创建处理过程: statement stmt=con.createStatement(); 4 执行处理语句: ResultSet

Django---Django连接Mysql数据库

前面介绍了Django平台的数据交互,这些数据都是在本地存放着,修改内容或者重新启动服务,数据就消失了,如果我们把数据存放在数据库中,不就保存了吗? Django数据库 Django中自带的也有数据库(sqlite3),自带的轻量级数据库sqlite3,已经完全够了,当然大家都很数据Mysql数据库,我们也可以通过Django连接Mysql数据库 连接Mysql数据库 在文件settings,py文件下中找到以下配置信息,该信息为连接默认数据库(sqlite3) # 连接数据库 DATABASE

php连接 mysql 数据库

php 连接数据库 一般是用面向对象的方法,需要先创建一个对象,即造一个连接对象,然后再写sql语句,(增改查删),最后执行sql语句 其中在创建连接对象时 我们用到的是MySQLI  是不区分大小写的, 这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互,唯一不同的是调用函数(对象方法)的方式不一样. 在创建连接对象后 需要先看一下连接是否成功 用if语句测试 mysqli_connect_error()就可以了  若显示fal