Pelican: рдХреНрдпрд╛ рдЯреИрдЧ рдХреЛ рдЧрд┐рдирддреА рд╕реЗ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдорд╛рд░реНрдЪ 2015  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: getpelican/pelican

рдХреНрдпрд╛ рд╡реИрдирд┐рд▓рд╛ рдЬрд┐рдВрдЬрд╛ рдореЗрдВ "рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛" рдХреЗ рдЖрдзрд╛рд░ рдкрд░ tags рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЙрд╕ рдЯреИрдЧ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╣реИ? рдпрд╣рд╛рдВ рдПрдХ рдЯреИрдЧ-рдкреЗрдбрд╝-рдереЛрдбрд╝реА-рдЪреАрдЬ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рд╛рдЗрдЯ рд╣реИ , рдФрд░ рдпрд╣рд╛рдВ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ

рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЗрд▓рд┐рдХрди рдпрд╛ рдЬрд┐рдВрдЬрд╛ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдкреЛрд╕реНрдЯрд░ рдиреЗ рдХрд┐рдпрд╛ рдерд╛ , рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рдкреВрдЫреВрдВрдЧрд╛, рдЕрдЧрд░ рдХрд┐рд╕реА рдиреЗ рдПрдХ рдЕрдЪреНрдЫреА рдЫрдБрдЯрд╛рдИ рддрдХрдиреАрдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рд╣реИред

рдХрд┐рд╕реА рднреА рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдФрд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд░рд╣рдиреЗ рд╡рд╛рд▓реЗ рдкреЗрд▓рд┐рдХрди!

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрджрд┐ рдХреЛрдИ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛:

from functools import partial

JINJA_FILTERS = {
    'sort_by_article_count': partial(
        sorted,
        key=lambda tags: len(tags[1]),
        reverse=True)} # reversed for descending order

key рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ tags , рди рдХрд┐ tag,article in tags ), рдФрд░ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреАрд╡рд░реНрдб arg рд╣реИ reverse ред :)

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

https://github.com/ingwinlu/sort_tags рдкреЗрд▓рд┐рдХрди-рдкреНрд▓рдЧрдЗрдиреНрд╕ рд░реЗрдкреЛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИред

рдПрдХ рдкреНрд▓рдЧрдЗрди рдЖрдорддреМрд░ рдкрд░ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд░реЗрдВрдбрд░ рдХреЗ рд▓рд┐рдП рдЫрдБрдЯрд╛рдИ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди...

pelicanconf.py

from functools import partial

JINJA_FILTERS = {
    'sort_by_article_count': partial(sorted, 
        key=lambda tag, articles: len(articles),
        reversed=True)} # reversed for descending order

рдЯреЗрдореНрдкрд▓реЗрдЯ

{% for tag, articles in tags|sort_by_article_count %}

рдзрдиреНрдпрд╡рд╛рдж @ingwinlu рдФрд░ @avaris! рдореИрдВ рдЖрдкрдХреЗ рджреЛрдиреЛрдВ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рдПрдХ рд╢реЙрдЯ рджреВрдВрдЧрд╛ред рдореИрдВрдиреЗ рдЙрд╕ рдкреНрд▓рдЧрдЗрди рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рд╡рд░рдг "рд▓реЗрдЦ рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреНрд░рдордмрджреНрдз рдЯреИрдЧ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЗрд▓рд┐рдХрди рдкреНрд▓рдЧрдЗрди" рдиреЗ рдореБрдЭреЗ рдЧреБрдорд░рд╛рд╣ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ "рдореИрдВ рдЗрд╕рдХреЗ рд▓реЗрдЦреЛрдВ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЯреИрдЧ рдХреНрдпреЛрдВ рдЫрд╛рдБрдЯрдирд╛ рдЪрд╛рд╣реВрдБрдЧрд╛?" рд▓реЗрдХрд┐рди рдЕрдм рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд▓рдВрдмрд╛рдИ рд╣реИ len() ред

рдпрджрд┐ рдХреЛрдИ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛:

from functools import partial

JINJA_FILTERS = {
    'sort_by_article_count': partial(
        sorted,
        key=lambda tags: len(tags[1]),
        reverse=True)} # reversed for descending order

key рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддрд╛ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ tags , рди рдХрд┐ tag,article in tags ), рдФрд░ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреАрд╡рд░реНрдб arg рд╣реИ reverse ред :)

@mwcz рдареАрдХ рд╣реИ, рдореЗрд░рд╛ рдмреБрд░рд╛ред рдЙрд╕рдХреЗ рд▓рд┐рдП рдорд╛рдлрд╝ рдХрд░рдирд╛ред key рдлрд╝рдВрдХреНрд╢рди рдХреЛ (tag, articles) рдЯрдкрд▓ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

key=lambda (tag, articles): len(articles) ред

рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╛рдпрдерди 3 рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЖрдкрдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдмреЗрд╣рддрд░ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

quack1 picture quack1  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

soulchainer picture soulchainer  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mandaris picture mandaris  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

junjiecai picture junjiecai  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

chenjiandongx picture chenjiandongx  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ