簡(jiǎn)單的連接MySQL與Python的Bottle框架的方法
Python關(guān)于mySQL的連接插件眾多,Bottle下也有人專(zhuān)門(mén)開(kāi)發(fā)的插件:bottle-mysql具體使用方法見(jiàn)官方,總共感覺(jué)其用法限制太多,其使用起來(lái)不方便,最適合的當(dāng)然是,mySQL官網(wǎng)給Python提供的通用官方驅(qū)動(dòng),用起來(lái)很順手:mysql-connector 具體操作如下:
# -*- coding: utf-8 -*- #!/usr/bin/python # filename: login_admin.py # codedtime: 2014-9-7 11:26:11 import bottle import mysql.connector # 導(dǎo)入mysql數(shù)據(jù)庫(kù)連接器 def check_userinfo(): a_list = [] # 創(chuàng)建一個(gè)空列表 username = bottle.request.GET.get('loginname','').strip() # 用戶(hù)名 password = bottle.request.GET.get('password','').strip() # 密碼 if username is not None or password is not None: try: # 連接數(shù)據(jù)庫(kù) conn = mysql.connector.connect(user='root', password='123456', database='myblog') cursor = conn.cursor() # 創(chuàng)建數(shù)據(jù)游標(biāo) # 執(zhí)行查詢(xún) query = ("SELECT username, password FROM mb_users " "WHERE username=%s and password=%s") cursor.execute(query, (username, password)) a_list = cursor.fetchall() # fetchone獲取一個(gè)元組 #count = int(cursor.rowcount) # 獲取元組個(gè)數(shù) return a_list except mysql.connector.Error as err: print("Something went wrong: {}".format(err)) exit() finally: conn.commit() # 提交修改 cursor.close() # 關(guān)閉數(shù)據(jù)庫(kù) conn.close() else: return a_list def login_admin(): if bottle.request.GET.get('bs-submit','').strip(): #點(diǎn)擊登錄按鈕 a_list = check_userinfo() if a_list: a_name = a_list[0][0] # 獲得用戶(hù)名 return bottle.template('templates/index_user.tpl', username = a_name) else: return bottle.template('templates/login_admin.tpl', action='/login_admin', error_info='請(qǐng)輸入正確的用戶(hù)名或密碼!') else: return bottle.template('templates/login_admin.tpl', action='', error_info=' ')
以上是MySQL在Botlle中的簡(jiǎn)單用法,
順便提一下:安裝和管理mySQL,建議安裝使用XAMPP,XAMPP集成了Apache, MySQL、PHP、Tomcat等多種工具,一次性解決安裝,不用自己繁瑣的一個(gè)個(gè)安裝和配置,而且管理也很方便。XAMPP安裝的MySQL默認(rèn)用戶(hù)是:root 密碼為空。
- python bottle框架支持jquery ajax的RESTful風(fēng)格的PUT和DELETE方法
- 關(guān)于python的bottle框架跨域請(qǐng)求報(bào)錯(cuò)問(wèn)題的處理方法
- Python用Bottle輕量級(jí)框架進(jìn)行Web開(kāi)發(fā)
- 使用Python的Bottle框架寫(xiě)一個(gè)簡(jiǎn)單的服務(wù)接口的示例
- Python的Bottle框架基本知識(shí)總結(jié)
- Python的Bottle框架中返回靜態(tài)文件和JSON對(duì)象的方法
- Python的Bottle框架中實(shí)現(xiàn)最基本的get和post的方法的教程
- 淺談Python使用Bottle來(lái)提供一個(gè)簡(jiǎn)單的web服務(wù)
相關(guān)文章
Python獲取秒級(jí)時(shí)間戳與毫秒級(jí)時(shí)間戳的示例代碼
這篇文章主要介紹了Python獲取秒級(jí)時(shí)間戳與毫秒級(jí)時(shí)間戳的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04在Django中創(chuàng)建第一個(gè)靜態(tài)視圖
這篇文章主要介紹了在Django中創(chuàng)建第一個(gè)靜態(tài)視圖的方法,與其他編程語(yǔ)言的開(kāi)始一樣,以Hello world作為示例,需要的朋友可以參考下2015-07-07python如何使用正則表達(dá)式的前向、后向搜索及前向搜索否定模式詳解
這篇文章主要給大家介紹了關(guān)于python如何使用正則表達(dá)式的前向、后向搜索及前向搜索否定模式的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-11-11python中dict()的高級(jí)用法實(shí)現(xiàn)
這篇文章主要介紹了python中dict()的高級(jí)用法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11python中關(guān)于os.path.pardir的一些坑
這篇文章主要介紹了python中關(guān)于os.path.pardir的一些坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09用python畫(huà)了個(gè)圣誕樹(shù)給女朋友
大家好,本篇文章主要講的是用python畫(huà)了個(gè)圣誕樹(shù)給女朋友,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽2021-12-12命令行運(yùn)行Python腳本時(shí)傳入?yún)?shù)的三種方式詳解
這篇文章主要介紹了命令行運(yùn)行Python腳本時(shí)傳入?yún)?shù)的三種方式詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10python數(shù)據(jù)分析之如何刪除value=0的行
這篇文章主要給大家介紹了關(guān)于python數(shù)據(jù)分析之如何刪除value=0的行的相關(guān)資料,文中通過(guò)實(shí)例代碼以及圖文介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-12-12python讀出當(dāng)前時(shí)間精度到秒的代碼
在本文里小編給各位分享了一篇關(guān)于python怎么讀出當(dāng)前時(shí)間精度到秒的內(nèi)容,對(duì)此有需要的朋友們可以學(xué)習(xí)參考下。2019-07-07