Tags overhaul [DB reupgrade]
- Simplified schema - Tags are now added without reloading entire tag selector - On my system, adding 400 tags to an item (separately, with the tag selector updating each time) went from 59 seconds to 42. (Given that it takes only 13 seconds with the tag selector closed, though, there's clearly more work to be done.) - Tag selector now uses HTML flexbox (in identical fashion, for now, but with the possibility of fancier changes later, and with streamlined logic thanks to the flexbox 'order' property) - Various async fixes - Tests
This commit is contained in:
parent
b602cc4bd2
commit
33dedd1753
24 changed files with 951 additions and 689 deletions
|
@ -210,24 +210,6 @@ CREATE TRIGGER fku_itemNotes
|
|||
END;
|
||||
|
||||
|
||||
-- itemTags libraryID
|
||||
DROP TRIGGER IF EXISTS fki_itemTags_libraryID;
|
||||
CREATE TRIGGER fki_itemTags_libraryID
|
||||
BEFORE INSERT ON itemTags
|
||||
FOR EACH ROW BEGIN
|
||||
SELECT RAISE(ABORT, 'insert on table "itemTags" violates foreign key constraint "fki_itemTags_libraryID"')
|
||||
WHERE (SELECT libraryID FROM tags WHERE tagID = NEW.tagID) != (SELECT libraryID FROM items WHERE itemID = NEW.itemID);---
|
||||
END;
|
||||
|
||||
DROP TRIGGER IF EXISTS fku_itemTags_libraryID;
|
||||
CREATE TRIGGER fku_itemTags_libraryID
|
||||
BEFORE UPDATE ON itemTags
|
||||
FOR EACH ROW BEGIN
|
||||
SELECT RAISE(ABORT, 'update on table "itemTags" violates foreign key constraint "fku_itemTags_libraryID"')
|
||||
WHERE (SELECT libraryID FROM tags WHERE tagID = NEW.tagID) != (SELECT libraryID FROM items WHERE itemID = NEW.itemID);---
|
||||
END;
|
||||
|
||||
|
||||
-- Make sure tags aren't empty
|
||||
DROP TRIGGER IF EXISTS fki_tags;
|
||||
CREATE TRIGGER fki_tags
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue