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.
On te fait confiance. Faut quand même voir que les articles et tuto ne sont pas modifiés à haute fréquence, donc c'est sûrement tout à fait réaliste de faire ça.
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.
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
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