Changements radicaux pour la recherche sur la ZEP-12

Le problème exposé dans ce sujet a été résolu.

Comme ma solution, ne fait pas l'unanimité, on va prendre celle de SpaceFox qui elle fait l'unanimité.

J'ai identifié ces éléments la pour être dans la base de donnée, vous en voyez d'autre ?

Topics

  • Titre
  • Sous titres
  • Date de mise à jours du message
  • Si le topic à trouvé une solution
  • Si le topic est fermé
  • Si le topic est mis en avant
  • Les tags de chaque topics
  • Contenu du premier message
  • Le nombre de like
  • Le nombre de dislike
  • Si le message est visible
  • Si le texte est caché
  • L'adresse de redirection
  • L'auteur
  • Date de publication

Messages

  • Le contenu du message
  • Le nombre de like
  • Le nombre de dislike
  • Si le message est visible
  • Si le texte est caché
  • Date de mise à jours du message
  • Les tags du topics ?
  • L'adresse de redirection
  • L'auteur
  • Date de publication

Contenu (Article ou Tutoriel)

  • Titre
  • Description
  • Date de mise à jours du tutoriel
  • La licence
  • Les catégories du tutoriels
  • L'adresse vers la miniature du tutoriel
  • L'adresse de redirection
  • Les auteurs
  • L'introduction
  • La conclusion
  • Date de publication
  • Type du contenu

La partie

  • Le titre
  • L'introduction
  • La conclusion
  • Date de mise à jours
  • L'adresse vers la miniature du tutoriel
  • L'adresse de redirection
  • Les auteurs
  • Les catégories du tutoriels
  • Date de publication

Le chapitre

  • Le titre
  • L'introduction
  • La conclusion
  • Date de mise à jours
  • L'adresse vers la miniature du tutoriel
  • L'adresse de redirection
  • Les auteurs
  • Les catégories du tutoriels
  • Date de publication

L'extrait

  • Le titre
  • Le contenu
  • Date de mise à jours
  • L'adresse vers la miniature du tutoriel
  • L'adresse de redirection
  • Les auteurs
  • Les catégories du tutoriels
  • Date de publication

Edit 1: Je me suis rendu compte, que si plus tard, on veut rajouter du contenu à indexer, il va falloir faire des scripts de migrations et ça va être un peu chiant mais rien d'insurmontable.

Edit 2: J'ai volontairement oublié les commentaires des articles et ceux des tutoriels car ils sont pas indexés aujourd'hui et je pense que ça fait suffisamment de travail. Pareil, pour les membres.

Edit 3: Rajout des articles

Edit 4: Ça fait quand même beaucoup attributs dans la base de données et beaucoup d'informations à maintenir à jours (à chaque modification, toutes les actions admin (supprimer, caché et tout)). Je propose qu'on applique le système uniquement pour les tutos.

+1 -0

J'ai bien avancé, depuis les 6 derniers jours. La recherche fonctionne avec tout type de contenu et j'ai fait des tests unitaires dans la mesure du possible, j'ai créé la commande pour ré-indexer à la demande (pas testé encore) et j'ai fait un thread pour pas que l'indexation gêne trop.

Y'a aucune doc, c'est un truc à faire.

Si vous voulez faire un peu de review de code, c'est sur ce commit: https://github.com/DevHugo/zds-site/commit/bf0e0c705fa0ec933523f48029d5c01ca9fc29a2.

Si vous voulez tester, il vous faudrait:

  • Actualiser les dépendances, avec la commande, pip install --upgrade -r requirements.txt -r requirements-dev.txt
  • Actualiser votre base de donnée: python manage.py migrate
  • Arreter Solr, si il est démarré
  • Actualiser votre schema: python manage.py build_solr_schema > %solr_home%/example/solr/collection1/conf/schema.xml où %solr_home% est le dossier dans lequel vous avez installé Solr.
  • Publier un tuto
  • Démarrer Solr cd %solr_home%/example/ java -jar start.jar
  • Republier les index python manage.py rebuild_index
  • Tenter une recherche ! ^^
+3 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte