create methods to fetch data from the database

- start using a class to hold search query results
This commit is contained in:
geoffrey45 committed 2022-06-13 17:11:58 +03:00
1 parent 030ab8a379
commit b6c5c57186
4 files changed
+95 -31

No files matched your search

+49
View File
@@ -1,11 +1,14 @@
"""
Contains all the search routes.
"""
from typing import List
from app import helpers
from app.lib import searchlib
from flask import Blueprint
from flask import request
from server.app import instances, models
search_bp = Blueprint("search", __name__, url_prefix="/")
SEARCH_RESULTS = {
@@ -15,6 +18,52 @@ SEARCH_RESULTS = {
}
class SearchResults:
"""
Holds all the search results.
"""
query: str = ""
class Tracks:
"""
Holds all the tracks search results.
"""
results: List[models.Track]
class Albums:
"""
Holds all the albums search results.
"""
results: List[models.Album]
class Artists:
"""
Holds all the artists search results.
"""
results: List[models.Artist]
class DoSearch:
def __init__(self, query: str) -> None:
self.query = query
self.tracks = helpers.Get.get_all_tracks()
self.albums = helpers.Get.get_all_albums()
self.artists = helpers.Get.get_all_artists()
self.playlists = helpers.Get.get_all_playlists()
def search_tracks(self):
results = searchlib.SearchTracks(self.tracks, self.query)
def search_artists(self):
SearchResults.Artists.results = searchlib.SearchArtists(
self.artists, self.query
)
@search_bp.route("/search/tracks", methods=["GET"])
def search_tracks():
"""