Réécriture de init.sql
init.sql a été réécrit avec ces modifs :
- people a été intégré à kara (c'est une relation 1-n après tout)
- kara.hash a été remplacé par un entier AVEC PRIMARY KEY YESS
- du coup bucket a été supprimé
- changé kara.type et kara.category en kara.categry et kara.lang
- playlist a un INTEGER PRIMARY KEY (de toute façon il était déjà là avec les rowid de sqlite)
- belongs -> kara_playlist avec les ON DELETE CASCADE au lieu des triggers
- history a été remplacé par queue, avec une table queue_state pour sauvegarder l'état de la lecture (c'est plus propre je trouve)
- comme ça recouvre le use case de mpchc, je l'ai supprimée ?
Pour le trigger qui limite la taille de l'historique (de la file du coup), c'est ptet mieux de faire du ratelimit côté applicatif que de s'imposer une limite sur la taille ?
Les triggers sur les playlists protégées servent à rien pck on peut direct SELECT WHERE category = 'bite';
les views. . . rip les views
je ferait une fonction update pour maj la liste des kara
Rapports de requête de fusion
Activité
mentioned in merge request !2 (closed)
Dans le /home/kara qui est la racine de la base, il y a les dossiers de toutes les catégories, et le dossiers des nouveaux karas :
/home/kara/nouveau
, là par pseudo (Sting et Kubat au hazard) il y a une nouvelle racine de base pour ceux qui ont fait les karas, du coup on a des dossiers du type/home/kara/nouveau/Kubat/{amv,vo,va,cdg}
par exempleJ'ai plusieurs questions alors, parce qu'on parle bien de la structure de la db et non de /home/kara ?
Là on essaie de façonner les tables en fonction de la structure des dossiers, alors qu'il serait possible d'enregistrer les catégories/types (j'ai une question sur ça après) directement dans les tags des vidéos.
- TITLE avec un TargetTypeValue de 50 -> le nom de la musique
- TITLE avec un TargetTypeValue de 70 -> le nom de la source
- CONTENT_TYPE (50) -> catégorie (amv,vocaloid,cdg)
- ADDRESS -> la langue (vo, va, vf)
- ARTIST -> l'auteur du kara
Ça aurait comme avantage d'être plus flexible (un kara peut etre va et vocaloid) et de permettre de charger des kara depuis une clef usb/sftp/webdav. ça pourrait complexifier le code d'update de la db mais j'ai pas encore assez réfléchi à ça. (enfin là ça me parrait plus propre que de ranger dans des dossiers, qu'est-ce t'en penses ?)
Oki, je pense que ça peut être bien. Il faut juste trouver un moyen de différencier
amv/Toto1 - ED - toto2
etvo/Toto1 - ED - toto2
.Je pense qu'il faut séparer vo/va/vf de la langue, ça peut être un vo et être en anglais, et dans va il y a plein de langues. Du coup plus un truc comme ça :
- TITLE avec un TargetTypeValue de 50 -> le nom de la musique
- TITLE avec un TargetTypeValue de 70 -> le nom de la source
- CONTENT_TYPE (50) -> catégorie (amv,vocaloid,cdg,vo,(va,vf -> à fusionner ?),autres)
- ADDRESS -> la langue (jp, fr, en, ru, sp, it)
- ARTIST -> l'auteur du kara
Après oui, les dossiers c'est bien mais que pour les scripts bash et les recherches vite fais avec le terminal.
Le new c'est juste pratique pour le prez pour voir si un kara est déjà passé ou pas. En soit ça peut ne pas être stocké, il faut juste un moyen de le savoir rapidement.
En soit, ça peut être un champ dans la db, et c'est stocké comme les autres karas, sans dossier bizare.
Modifié par Kubat
added 1 commit
- 84af02ff - Ajout de l'empreinte de la base actuelle. Pour avoir les chemin il faut...
added 1 commit
- 49e504fb - Juste l'ajout d'un type qui est en gros comme les dossiers actuellements, ça...
mentioned in commit ffd5b1e2