déplace les contenues dans un repertoire par année

This commit is contained in:
Yannick Francois
2020-03-27 22:43:43 +01:00
parent 1f896d1afa
commit d69f91d2dd
808 changed files with 825 additions and 874 deletions
@@ -0,0 +1,65 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Yannick François - Les pieds dans le code</title>
<meta name="DC.title" content="elsif.fr, site de Yannick François aka yaf aka pouype."/>
<meta name="description" content="Yannick François's website. Senior developer, Code pedagogist. /ut7 teammate, proud member of Electrolab, the crazy hackerspace. Eternel supporter of April, a french association about freesoftware."/>
<meta name="keywords" content="code, développement, lean, agile, logiciel, tdd, objet, ruby, site perso, personnel, ruby on rails, refactoring, openbsd, bsd, libre, creative commons, unix"/>
<meta name="author" content="Yannick François, https://elsif.fr"/>
<meta name="designer" content="Yannick François, https://elsif.fr"/>
<meta name="geo.placename" content="Poissy, Ile de france, France"/>
<meta name="robots" content="index,follow" />
<meta name="language" content="French" />
<meta name="HandheldFriendly" content="True" />
<meta name="MobileOptimized" content="320" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0" />
<link rel="index" title="Yannick François / Developer" href="https://elsif.fr" />
<link rel="stylesheet" href="/css/knacss.css" media="all"/>
<link rel="stylesheet" href="/css/elsif.css" media="all"/>
<article>
<h1>
Skinny controllers and fat models
</h1>
<p>Hier, jai posé une question à la terre entière (ou presque):</p>
<blockquote>
<p>MyModel.paginate(blablabla) or just call MyModel.give_data and call paginate in MyModel ?</p>
</blockquote>
<p>Jai mis en place une pagination sur une liste de commande. Cela à plusieurs avantages.</p>
<ul>
<li>Graphique dabord. On ne peut vraiment pas proposer une interface claire avec une liste de 150 commandes</li>
<li>Performances ensuite. Aller cherche 150 commandes dun coup, cest faire attendre le client qui finalement nen fera que 10.</li>
</ul>
<p>Ceci étant dit, sur divers exemple que jai observé à droite et à gauche, lappel au modèle pour récupérer la liste de commandes dans le contrôleur ce fait sous la forme:</p>
<p>Je ne détail pas les conditions ici, mais pourtant ce sont elles qui me gène dans ce code. L&rsquo;appel à <code>paginate</code> (ou une autre méthode) dans le contrôleur ne me gène pas, de toute façon, il faut bien qu&rsquo;il travail un peu, même s&rsquo;il est <em>maigre</em> ! Mais par contre j&rsquo;ai beaucoup de mal avec le fait que le contrôleur connaisse les conditions pour la récupération de la liste. D&rsquo;autant que j&rsquo;ai dans ces conditions quelque valeur par défaut qui dépende d&rsquo;un contexte non présent dans les paramètres aujourd&rsquo;hui.</p>
<p>Je vais donc opter pour le déplacement de l&rsquo;appel à <code>paginate</code> dans mon modèle. J&rsquo;ai donc maintenant dans mon contrôleur quelque chose de plus clair, et plus simple:</p>
<blockquote>
<p>Et dans mon model</p>
</blockquote>
<p>C&rsquo;est bien beau, mais je me retrouve maintenant avec des éléments de présentation dans mon modèle. <em>C&rsquo;est mal</em>.</p>
<p>Je vais pour l&rsquo;instant passer la page demandé et la quantité par page en paramètre. Ce nest pas top non plus, mais je préfère cela pour linstant. Si quelquun a une idée, je suis prêt à lentendre.</p>
<article>
<footer style="font-size:75%;text-align:right"><em><a href="/feed.xml">suivre les articles</a></em></footer>
</body>
</html>