ZEP-12 : refonte du principe des tutoriels et articles

Avec pour base atomique ... l'extrait

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

J'ai fait une PR pour les corrections orthographiques. Je ne dis pas que c'est parfait, mais il serait peut-être judicieux d'attendre la fusion (ou pas…) avant d'y retoucher. ^^

+0 -0

C'est bon, j'ai inclus tes PR dans le code, merci.

vous noterez aussi que j'ai corrigé l'autodoc de notre module. Je mets cela en public pour que tout le monde en profite. Une docstring pour autodoc doit être sous ce format :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
def ma_method(param1, param2):
    """Ici, directement collé aux guillemets, la description
    sur plusieurs lignes s'il faut, mais à la fin, une ligne blanche est nécessaire

    :param param1: Ce que fait le param1
    :param param2: Ce que fait le param2
    :raise VotreException: Cas du lancement de l'exception <--- très sérieusement c'est surement ce qu'il manque le plus sur le dépôt et c'est casse couille quand on s'en prend une sans s'y attendre
    :return: ce que ça retourne
    :rtype: le type de retour, mais je en sais pas s'il faut utiliser un fullname ou pas...
    """
    pass
+0 -0

On devrait également utiliser :type param1: string, aussi, si on voulait bien faire. Quand à :rtype, c'est un peu ce que tu veux (Sphinx va pas vérifier que ça existe).

Du reste, je trouve que tu devrais faire un post séparé pour dire ça. Ne serait-ce que pour indiquer au gens de rédiger en ReST et pas en markdown (par exemple quand ça leur prend de mettre du code entre guillemet, genre and then ``self.save()`` is called) !!

Autre question à notre ami DTC : les urls doivent-elles être au singulier ou au pluriel? j'entends par là doit-on être /articles/id-article/slug-article ou bien /article/id-article/slug-article?

/me prie très fort pour que la réponse soit la bonne.

Sinon, une solution (mais tout le monde va me détester), c'est de dire que /articles/ et /tutoriels/ renvoient effectivement vers la liste des articles et tutos, mais qu'après on laisse tout dans /contenus/. Et donc, un article/tuto aurait une url du genre /contenus/12/machinchose/. Le problème de ça, c'est évidement, le SEO, le fait qu'on perd l'info de savoir si c'est un article/tuto rien qu'en regardant dans l'url. Et que je vais me faire incendier pour le reste.

Nouveau point d'avancement :

  • Pierre a codé la fonction d'import d'un tuto, si ça c'est pas classe? ça serait vraiment cool si des gens voulaient bien tester avec leurs propres tuto réel de zds. Pour cela, importez l'archive depuis zds, dézippez là, lancez la commande python manage.py upgrade_manifest_to_v2 /chemin/vers/le/fichier/manifest.json. Il ne vous restera plus qu'à reziper le dossier et à tout envoyer sur zds. Je n'ai pas regardé le code, je ne sais donc pas si pierre supporte l'import d'image comme ça se passait avec les archives .tuto. Si ça n'est pas le cas, firm1, comme tu avais codé ça, tu peux passer par là (on veut bien écrire la documentation pour toi <3)
  • J'ai commencé le script de migration de la v1 à la v2, il prend la forme de la commande python manage.py migrate_to_zep12. Pour l'instant tout le contenu hors ligne est supporté. Comme la publication n'est pas encore mise en place, je n'ai pas pu coder cette partie là.
  • Le déplacement a subi quelques débug et tests.
  • Une régression fonctionnelle a été mise en avant : nous ne gérons pas l'édition simultanée par deux auteurs. Comme nous en sommes conscients, nous allons corriger le problème dans pas longtemps, c'est peut être l'occasion aussi de le rendre plus "beau", si quelqu'un veut faire une maquette on l'implémentera, sinon on sera isofonctionnel avec ce qui se fait pour l'instant.
Fonctionnalité/élément de code Etat Testé unitairement Commentaire
Modèle de données Fini Oui Tout a été fait en fonction de ce qui avait été dit dans le topic de conception
ZEP 3 Fini Partiellement On est compatible avec la dernière version théoriquement
Création d'un tutoriel/article Fini Oui
Mise en validation Refactoré, manque la validation partielle Non On garde le même process qu'avant, la validation partielle arrive
Mise en béta Fini Oui Les articles ont leur béta
Des galleries pour les articles Codé En cours
Importation Codé /!\ Partiellement Importation d'un .tuto, ou d'un markdown. Permet l'édition hors ligne. Quand on importe une archive pour mettre à jour, de nouveaux extraits/sections peuvent apparaître ou être enlevés. Si vous vous sentez la motivation d'améliorer les tests unitaires, on prend.
Déplacement des éléments Codé Partiellement Désormais, nous supportons le déplacement dans un autre conteneur, la fusion de deux contenus n'est pas prévue
Publication Pas commencé Pas commencé On va prégénérer le HTML pour que le cache fonctionne
Exportation des anciens contenus En cours/!\ A la main, je ne sais pas si on peut automatiser ça Support des éléments hors ligne codé
Documentation Gros avancement N/A Corrigée et quelques commentaires à propos des commandes manage.py
Signaler une correction Pas commencé Pas commencé Pour compatibilité avec les choses plus récentes
Redirection des URLs pas commencé Pas commencé Deux cas : la compatibilité, et le changement de slug. La question a été posée au dessus, on attend un DTC pour décider quelque chose
Suppression du tuto Fini Oui Suppression des sections et extraits aussi.
Articles avec plusieurs extraits Codé Non Un article peut avoir plusieurs extraits mais pas de section
Historique du tuto Codé partiellement Il a été proposé, sur le forum, de paginer ledit historique. Si vous voulez l'implémenter, on n'est pas contre.
Edition simultanée Pas commencée Pas commencée On a découvert la régression hier :(

VOilou.

Si ça n'est pas le cas, firm1, comme tu avais codé ça, tu peux passer par là (on veut bien écrire la documentation pour toi <3)

artragis

J'avoue que j'ai un vent de désolation qui m’envahit lorsque je pense au calvaire que ça représente de gérer l'import des images. Mais si vous n'êtes pas trop pressé, je pense pouvoir trouver une nuit à y consacrer.

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