rm: 在main分支中取消了对Redis数据库的支持, 将此功能移至Redis分支

This commit is contained in:
MarkusJoe
2022-10-04 15:33:52 +08:00
parent b33c0ca26f
commit d415790da1
3 files changed
+7 -73

No files matched your search

-4
View File
@@ -6,11 +6,9 @@
# @File Name: view.py # @File Name: view.py
import os
from src.api import api from src.api import api
from src.db import Database from src.db import Database
from fastapi.responses import FileResponse from fastapi.responses import FileResponse
from fastapi.responses import JSONResponse
@api.get('/query/{name}') @api.get('/query/{name}')
@@ -21,8 +19,6 @@ async def query(name: str):
@api.get('/query-all/') @api.get('/query-all/')
async def query_all(limit: int = 30): async def query_all(limit: int = 30):
if os.getenv('c_not_full'):
return JSONResponse({'code': -200, 'msg': 'Redis Database do not support this action'})
data = Database().query_all()[:limit] data = Database().query_all()[:limit]
result = {} result = {}
for i in data: for i in data:
+4 -8
View File
@@ -7,21 +7,17 @@
import os import os
import sqlite3 as operator
from urllib.request import urlretrieve from urllib.request import urlretrieve
from src.config import Config from src.config import Config
from src.db.db import SQLite as Database
database = Config.database database = Config.database
if database == 'sqlite': if not os.path.exists('./src/db/data.sqlite'):
import sqlite3 as operator
if not os.path.exists('./src/db/data.sqlite'):
print('Downloading database file. Please wait...') print('Downloading database file. Please wait...')
file_url = 'https://static.rtast.cn/data.sqlite' file_url = 'https://static.rtast.cn/data.sqlite'
urlretrieve(file_url, './src/db/data.sqlite') urlretrieve(file_url, './src/db/data.sqlite')
print('Download database file successfully.') print('Download database file successfully.')
from src.db.db import SQLite as Database
elif 'redis' in database:
import redis as operator
from src.db.db import Redis as Database
__all__ = [Database, operator] __all__ = [Database, operator]
-58
View File
@@ -54,61 +54,3 @@ class SQLite(Base):
super().__init__() super().__init__()
self.conn = operator.connect('./src/db/data.sqlite') self.conn = operator.connect('./src/db/data.sqlite')
self.cursor = self.conn.cursor() self.cursor = self.conn.cursor()
class Redis(Base):
def __init__(self):
super().__init__()
self.host: str = os.getenv('c_host')
self.port: int = int(os.getenv('c_port'))
self.password: str = os.getenv('c_password') # if is None then it is None. lol
self.conn = operator.Redis(host=self.host,
port=self.port,
password=self.password,
decode_responses=True)
def __del__(self):
self.conn.close()
def query(self, _id: str) -> tuple:
return self._get(_id)
def insert(self, _id: str) -> bool:
return self._set(_id)
def update(self, _id: str, times: int) -> bool:
return self._set(_id, times)
def query_all(self) -> list:
return self._get_all()
def query_image(self, theme: str) -> list:
return self._get_image(theme)
def _get(self, _id: str) -> tuple:
result = self.conn.get(_id)
if result is None:
self._set(_id)
return tuple([_id, 0])
self._set(_id, int(result))
return tuple([_id, int(result)])
def _set(self, _id: str, times: int = 0) -> bool:
times += 1
return self.conn.set(_id, times)
def _get_all(self) -> list:
results = self.conn.keys()
return results
def _get_image(self, theme: str) -> list:
images = []
for i in range(10):
images.append([i, self.conn.get(f'{theme}-{i}')])
width = int(self.conn.get(f'{theme}-width'))
height = int(self.conn.get(f'{theme}-height'))
for j in range(10):
images[j].append(width)
images[j].append(height)
return images