Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- # Form implementation generated from reading ui file 'C:\20170522Dev\20170720\main.ui'
- #
- # Created by: PyQt5 UI code generator 5.8.2
- #
- # WARNING! All changes made in this file will be lost!
- from PyQt5 import QtCore, QtWidgets
- import redis
- from redis.exceptions import ConnectionError
- import sys , os
- #First part is the UI class
- class Ui_RedisRequest(object):
- #define the redis connection and handle the exceptions
- #you should run the redis server first
- def redisload(self):
- try:
- connection = redis.StrictRedis(host='localhost', port=6379, db=0)
- except ConnectionError as e:
- print("The Error occur in type : "+str(type(e)))
- print("Error: Database server connection failed, redis is not connected")
- except Exception :
- print("Something goes wrong with the Redis Database Connection")
- else:
- print("Opened database successfully")
- try:
- # self.tableWidget.setHorizontalHeaderLabels(["姓名", "性别", "籍贯", "住址", "联系方式"])
- connection.delete('ma2017')
- connection.rpush('ma2017', '15165656888','北京市东三环','河北','男','马帅')
- result = connection.lrange('ma2017', 0, 5) # 或者其他数据query,例如对某个List的查询
- print(result)
- except Exception :
- print("Database query not processed successfully")
- else:
- result = [k.decode('utf-8') for k in result]
- result.reverse()
- # enumeration implemetation for more data loading methods
- # self.tableWidget.setRowCount(0)
- # for row_number,row_data in enumerate(result):
- # self.tableWidget.setRowCount(0)
- # for column_number,data in enumerate(row_data):
- # self.tableWidget.setItem(row_number,column_number,QtWidgets.QtTableWidgetItem(str(data)))
- for i in result:
- column_number = result.index(i)
- self.tableWidget.setItem(0, column_number, QtWidgets.QTableWidgetItem(str(i)))
- # result = QtWidgets.QTableWidgetItem(result)
- # self.tableWidget.setItem(1, 4, result)
- def setupUi(self, RedisRequest):
- RedisRequest.setObjectName("RedisRequest")
- RedisRequest.resize(938, 414)
- self.centralWidget = QtWidgets.QWidget(RedisRequest)
- self.centralWidget.setObjectName("centralWidget")
- self.verticalLayout = QtWidgets.QVBoxLayout(self.centralWidget)
- self.verticalLayout.setContentsMargins(11, 11, 11, 11)
- self.verticalLayout.setSpacing(6)
- self.verticalLayout.setObjectName("verticalLayout")
- self.tableWidget = QtWidgets.QTableWidget(self.centralWidget)
- self.tableWidget.setRowCount(20)
- self.tableWidget.setColumnCount(30)
- self.tableWidget.setObjectName("tableWidget")
- self.tableWidget.setHorizontalHeaderLabels(["姓名", "性别", "籍贯", "住址", "联系方式"])
- self.verticalLayout.addWidget(self.tableWidget)
- self.pushButton = QtWidgets.QPushButton(self.centralWidget)
- self.pushButton.setMaximumSize(QtCore.QSize(100, 16777215))
- self.pushButton.setObjectName("pushButton")
- self.pushButton.clicked.connect(self.redisload)
- self.verticalLayout.addWidget(self.pushButton)
- RedisRequest.setCentralWidget(self.centralWidget)
- self.mainToolBar = QtWidgets.QToolBar(RedisRequest)
- self.mainToolBar.setObjectName("mainToolBar")
- RedisRequest.addToolBar(QtCore.Qt.TopToolBarArea, self.mainToolBar)
- self.statusBar = QtWidgets.QStatusBar(RedisRequest)
- self.statusBar.setObjectName("statusBar")
- RedisRequest.setStatusBar(self.statusBar)
- self.retranslateUi(RedisRequest)
- QtCore.QMetaObject.connectSlotsByName(RedisRequest)
- def retranslateUi(self, RedisRequest):
- _translate = QtCore.QCoreApplication.translate
- RedisRequest.setWindowTitle(_translate("RedisRequest", "RedisRequest"))
- self.pushButton.setText(_translate("RedisRequest", "查询记录"))
- if __name__ == "__main__":
- import sys
- app = QtWidgets.QApplication(sys.argv)
- RedisRequest = QtWidgets.QMainWindow()
- ui = Ui_RedisRequest()
- ui.setupUi(RedisRequest)
- RedisRequest.show()
- sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement