fulltext search working
This commit is contained in:
parent
3d16882185
commit
b55b105e05
@ -678,7 +678,7 @@ class MusicTable(QTableView):
|
|||||||
self.model2.setHorizontalHeaderLabels(self.headers.get_user_gui_headers())
|
self.model2.setHorizontalHeaderLabels(self.headers.get_user_gui_headers())
|
||||||
fields = ", ".join(self.headers.user_fields)
|
fields = ", ".join(self.headers.user_fields)
|
||||||
search_clause = (
|
search_clause = (
|
||||||
"title LIKE %?% AND artist LIKE %?% and album LIKE %?%"
|
"title LIKE ? OR artist LIKE ? OR album LIKE ?"
|
||||||
if self.search_string
|
if self.search_string
|
||||||
else ""
|
else ""
|
||||||
)
|
)
|
||||||
@ -690,7 +690,8 @@ class MusicTable(QTableView):
|
|||||||
query = f"SELECT id, {fields} FROM song JOIN song_playlist sp ON id = sp.song_id WHERE sp.playlist_id = ?"
|
query = f"SELECT id, {fields} FROM song JOIN song_playlist sp ON id = sp.song_id WHERE sp.playlist_id = ?"
|
||||||
# fulltext search
|
# fulltext search
|
||||||
if self.search_string:
|
if self.search_string:
|
||||||
params = 3 * [self.search_string]
|
# params = 3 * [self.search_string]
|
||||||
|
params = ["%" + self.search_string + "%"] * 3
|
||||||
if query.find("WHERE") == -1:
|
if query.find("WHERE") == -1:
|
||||||
query = f"{query} WHERE {search_clause};"
|
query = f"{query} WHERE {search_clause};"
|
||||||
else:
|
else:
|
||||||
@ -708,7 +709,7 @@ class MusicTable(QTableView):
|
|||||||
query = f"SELECT id, {fields} FROM song"
|
query = f"SELECT id, {fields} FROM song"
|
||||||
# fulltext search
|
# fulltext search
|
||||||
if self.search_string:
|
if self.search_string:
|
||||||
params = 3 * [self.search_string]
|
params = ["%" + self.search_string + "%"] * 3
|
||||||
if query.find("WHERE") == -1:
|
if query.find("WHERE") == -1:
|
||||||
query = f"{query} WHERE {search_clause};"
|
query = f"{query} WHERE {search_clause};"
|
||||||
else:
|
else:
|
||||||
|
|||||||
2
main.py
2
main.py
@ -496,7 +496,7 @@ class ApplicationWindow(QMainWindow, Ui_MainWindow):
|
|||||||
def handle_search_box_text(self, text: str):
|
def handle_search_box_text(self, text: str):
|
||||||
"""when text changes, update the music table thingie"""
|
"""when text changes, update the music table thingie"""
|
||||||
self.tableView.set_search_string(text)
|
self.tableView.set_search_string(text)
|
||||||
self.tableView.load_music_table(text)
|
self.tableView.load_music_table()
|
||||||
|
|
||||||
def play_audio_file(self, filepath=None) -> None:
|
def play_audio_file(self, filepath=None) -> None:
|
||||||
"""
|
"""
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user