Bonjour Joeri ,

et merci d'avoir bien voulu partager le code avec  DakarLug, je n'ai pas
grand chose à dire il est parfait le code et tres leger  , et que ca pourrait
etre un debut de travail pour migrer le blog de DakarLug sur du Berry py ,
je ne sais pas si tu t'en rappelles , je trouve que c'est tres leger
et que il y' a
juste Flask et MarkDown a installer et le tour est joué , en tout cas c'est mon
cas :)

J'ai donc pris la liberté de le mettre sur le git de DakarLug depuis ton Fork ,
https://github.com/Dakarlug/dwarf . Si Tu n'es pas d'accord , je
pourrais l'enveler
ca ne doit pas poser de problemes!

J'ai juste quelques remarques a faire , si tu permets :

1 - j'ai du faire un  -- pip install markdown -- pour le faire marcher
chez moi ,car
markdownn'est pas dans la librairie standard de Python . Peu etre a l'avenir il
faudrai que tu mettes
un setup et  lister les librairies dependantes pour que on puisse installer
dwarf via un  --setup.py install --

2 - J'ai remarqué que si on ajoute des news dans le dossier blogs , ce que je
me suis amusé a faire en ajoutant quelques fichiers MarkDown dans le
dossier  https://github.com/Dakarlug/dwarf/tree/master/dwarf/content/blog, des
fichiers que j'ai pris ici https://github.com/Dakarlug/scrapper qui sont en fait
les articles publiés sur le blogs de Dakarlug.

Remarque:

Il ny'a pas de paginations lorsque le nombre d'articles est tres evelevé >5 .Je
pensais qu'il serait bien de pouvoir gerer la pagination avec Flask .J'ai donc
ajouté quelques fix pour pouvoir le faire

J'ai modifié L'index  dans view
=====================

@app.route('/', defaults={'page': 1})
@app.route('/page/<int:page>')
def index(page):
     files=content_list('blog')
     newest_first = sorted(files,
                           key=operator.itemgetter("date"
),
                           reverse=True)
     count = len(newest_first)
     newest_first = get_newest_first_for_page(
         newest_first , page, pagination.PER_PAGE)
     if not newest_first and page != 1:
        raise
     pagination_ = pagination.Pagination(
         page, pagination.PER_PAGE, count)
     return render_template('posts.tpl.html',
                    pagination=pagination_,
                            posts=newest_first )

https://github.com/Dakarlug/dwarf/blob/master/dwarf/__init__.py#L43&L60

Ajouter une methode
===============
def get_newest_first_for_page(newest_first , page, per_page):
    if page == 1 :return newest_first[:per_page]
    start = (page-1) * per_page
    try:
        return newest_first[start : start + per_page ]
    except :
        return None

https://github.com/Dakarlug/dwarf/blob/master/dwarf/__init__.py#l61&L67


Ajouter une methode
===============

def url_for_other_page(page):
    args = request.view_args.copy()
    args['page'] = page
    return url_for(request.endpoint, **args)
app.jinja_env.globals['url_for_other_page'] = url_for_other_page

https://github.com/Dakarlug/dwarf/blob/master/dwarf/__init__.py#L179&L184



Ajouter une classe Pagiation:
======================

https://github.com/Dakarlug/dwarf/blob/master/dwarf/pagination.py


Modifier le fichier posts.tpl.html
======================

https://github.com/Dakarlug/dwarf/blob/master/dwarf/templates/posts.tpl.html



Joeri , les codes ci dessus sont juste une implementation du programmeur de
Flask Armin Ronacher  (http://lucumr.pocoo.org/ )pour gerer la pagination
(http://flask.pocoo.org/snippets/44/) des articles peu etre qu'il y'a
une facon plus
simple de faire mais c'est celle la que j'ai trouvé pour le moment .
Et il marche j'ai commité sur le git de DakarLug

http://flask.pocoo.org/snippets/44/


Je suis disponible pour aider a mes heures si il y'a du taff  pour le
maigration du
Blog de DakarLug , je pense que tu avais promis :)

Licence:
======

Je ne comprends pas trop ici j'ai vu sur certaines pages que tu as mis un
http://freedomdefined.org/Licenses/CC-BY comme Licence  et que sur le
README Tu as mis un BSD. J'avoue que Je ne maitrise pas trop tous ces
liences , c'est pourquoi je mets toujours du GPL. J'ai essayé de lire un
peu le CC-BY , mais j'avoue que ce n'est pas si clair .Purrais tu nous
preciser une Licence definive et nous expliquer ?

Merci encore une fois!

--Ad


Le 20 octobre 2013 17:46, Joeri Poesen <[email protected]> a écrit :
>
> 2013/10/9 Alioune Dia <[email protected]>
>>
>>
>> Pour le code review de ce blog ( peu être que  si c'est juste dans un but
>> d'apprentissage, tu devrais le rendre publique, ainsi d'autres gens
>> hors du Sénégal pourrait t'aider ou améliorer, Moi j'ai horreur des codes
>> qu'on
>> partage entre deux ordinateurs ). Je pensaisa https://github.com/Dakarlug
>> , Tu es déjà membre et passer en admin ne serait
>>
>> pas un problème je pense !
>
>
>
> Alors, pour ceux qui sont intéressés: je viens de publier mon petit moteur
> de publication en ligne.
> Ça s'appelle Dwarf et ça se trouve sue github:
> http://github.com/jpoesen/dwarf
>
> Ce n'est pas encore un générateur de contenu statique - ça viendra
> inch'allah, peut-être grâce à vos contributions.
>
> Alioune, je me prépare. Sois gentil please.
> J.
>
>
>
>
>
>
> --
> Ce message a été envoyé à la liste [email protected]
> Gestion de votre abonnement : http://dakarlug.org/liste
> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
> Le site du DakarLUG : http://dakarlug.org

--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à