python之路_django入门项目(老师表)

一、模板语言

  

二、多选框后端取值

  后端取值方式如下:

三、ajax发数据方式

  1、正常情况:

前端发数据:

后端处理数据:

  2、非正常情况:

前端发数据:

后端处理数据:

  3、前端取值方式

四、mysql数据库相关

  1、获取最后一条信息id

  2、批量执行sql语句

  3、类的方式连接数据库

  上述两种方式,无论是批量执行sql还是只执行一条sql,均为为连接一次、执行一次、关闭一次,这对数据库的连接使用是不合理的,因此有必要使用类的方式连接数据库,具体实例如下:

import pymysql
class SQLManager(object):

    def __init__(self):                                                     #设置为实例化后自动连接
        self.connect()

    def connect(self):                                                      #连接数据库
        self.conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", passwd="", db="mysite", charset="utf8")
        self.cursor = self.conn.cursor(cursor=pymysql.cursors.DictCursor)

    def get_list(self, sql, args=None):                                    #获取多条数据
        self.cursor.execute(sql, args)
        result = self.cursor.fetchall()
        return result

    def get_one(self, sql, args=None):                                     #获取一条数据
        self.cursor.execute(sql, args)
        result = self.cursor.fetchone()
        return result


    def run(self, sql, args=None):                                         #更新数据
        self.cursor.execute(sql, args)
        self.conn.commit()

    def create(self, sql, args=None):                                      #run后获取最后一条数据id
        self.cursor.execute(sql, args)
        self.conn.commit()
        ret = self.cursor.lastrowid  
        return ret

    def m_create(self, sql, args=None):                                    #批量执行
        # self.cursor.executemany(sql, [(1, 36), (1, 38), (1, 36)])
        self.cursor.executemany(sql, args)  
        self.conn.commit()


    def close(self):                                                       #关闭数据库
        self.cursor.close()
        self.conn.close()
#以下两个函数会在自动执行,分别为开启数据库和关闭数据库
    def __enter__(self):
        return self

    def __exit__(self, exc_type, exc_val, exc_tb):
        self.close()

  应用实例:

 

posted @ 2017-11-30 22:24  骑猪走秀  阅读(204)  评论(0编辑  收藏  举报