<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"	>
<channel>
	<title>Commentaires sur : Nuage de tag avec Ruby On Rails : acts_as_taggable</title>
	<atom:link href="http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/</link>
	<description>Le blog [de l'âge] de Pierre</description>
	<lastBuildDate>Sat, 17 Jul 2010 21:33:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Par : Vicodin without prescription.</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-118400</link>
		<dc:creator>Vicodin without prescription.</dc:creator>
		<pubDate>Tue, 13 Apr 2010 00:41:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-118400</guid>
		<description>&lt;p&gt;&lt;strong&gt;Vicodin addiction....&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Vicodin cod. Vicodin. Vicodin without prescription. Vicodin addiction. Online vicodin....&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p><strong>Vicodin addiction&#8230;.</strong></p>

<p>Vicodin cod. Vicodin. Vicodin without prescription. Vicodin addiction. Online vicodin&#8230;.</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : Stoneageblog.com &#187; RubyOnRails et l&#8217;api GoogleMaps</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-17411</link>
		<dc:creator>Stoneageblog.com &#187; RubyOnRails et l&#8217;api GoogleMaps</dc:creator>
		<pubDate>Tue, 11 Dec 2007 22:49:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-17411</guid>
		<description>&lt;p&gt;[...] Il y a quelques mois j&#8217;ai publié un long article présentant la création d&#8217;une application Rails depuis la première ligne de code jusqu&#8217;à son hébergement sur internet. Quelques temps plus tard je publiai un &#8220;addon&#8221; à cet article présentant l&#8217;ajout d&#8217;un système de nuage de tags et nous voilà aujourd&#8217;hui avec un nouvel ajout afin d&#8217;apprendre à manipuler les fameuses cartes de Google en toute simplicité&#8230; [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Il y a quelques mois j&#8217;ai publié un long article présentant la création d&#8217;une application Rails depuis la première ligne de code jusqu&#8217;à son hébergement sur internet. Quelques temps plus tard je publiai un &#8220;addon&#8221; à cet article présentant l&#8217;ajout d&#8217;un système de nuage de tags et nous voilà aujourd&#8217;hui avec un nouvel ajout afin d&#8217;apprendre à manipuler les fameuses cartes de Google en toute simplicité&#8230; [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : Shoghi</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-16022</link>
		<dc:creator>Shoghi</dc:creator>
		<pubDate>Sun, 25 Nov 2007 18:02:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-16022</guid>
		<description>&lt;p&gt;Super!! comme le premier.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Super!! comme le premier.</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : SoliSoft.net &#187; Blog Archive &#187; acts_as_taggable_on_steroids et will_paginate</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-15064</link>
		<dc:creator>SoliSoft.net &#187; Blog Archive &#187; acts_as_taggable_on_steroids et will_paginate</dc:creator>
		<pubDate>Thu, 15 Nov 2007 17:16:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-15064</guid>
		<description>&lt;p&gt;[...] Vous trouverez sur le site de Stoneage un tutoriel pour installer acts&#95;as&#95;taggable&#95;on&#95;steroids. [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Vous trouverez sur le site de Stoneage un tutoriel pour installer acts&#95;as&#95;taggable&#95;on&#95;steroids. [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : Pierre Rigal</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-9978</link>
		<dc:creator>Pierre Rigal</dc:creator>
		<pubDate>Mon, 24 Sep 2007 11:20:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-9978</guid>
		<description>&lt;p&gt;Merci pour ces précisions ! &lt;em&gt;Le tuto GoogleMaps est dans mes brouillons Wordpress... in progress&lt;/em&gt; ;)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Merci pour ces précisions ! <em>Le tuto GoogleMaps est dans mes brouillons Wordpress&#8230; in progress</em> <img src='http://www.stoneageblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>]]></content:encoded>
	</item>
	<item>
		<title>Par : gdufloux</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-9962</link>
		<dc:creator>gdufloux</dc:creator>
		<pubDate>Mon, 24 Sep 2007 07:26:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-9962</guid>
		<description>&lt;p&gt;Merci pour le tuto, c&#039;est trés clair ;)&lt;/p&gt;

&lt;p&gt;Quelques remarques (perfectionnistes) sur la performance, suite à la lecture et l&#039;utilisation de &lt;a href=&quot;http://agilewebdevelopment.com/plugins/acts_as_taggable_on_steroids&quot;&gt;acts&#95;as&#95;taggable&#95;on&#95;steroids&lt;/a&gt;   :&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Ajouter les index à la migration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Voir le acts&#95;as&#95;taggable&#95;migration généré par le plugin&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;add_index :taggings, :tag_id
add_index :taggings, [:taggable_id, :taggable_type]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;2. Optimiser le calcul d&#039;occurence des tags&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;On calcule t.count.to&#95;i une seule fois si possible, et un &lt;em&gt;if-elsif&lt;/em&gt; évite ici le test de deux conditions exclusives. Un petit &lt;em&gt;1000.times do&lt;/em&gt; sert à comprendre la situation lorsqu&#039;il y a beaucoup de tag ;)&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# 1000.times do 
tags.each { &#124;t&#124; 
    count = t.count.to_i
    if count &gt; max 
        max = count
    elsif count &lt; min 
        min = count
    end
}
# end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;2bis. Ou bien utiliser un cache...&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Un petit migrate pour ajouter un champ de cache en base :&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;add_column :cds, :cached_tag_list, :string
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Puis mettre à jour le cache dans cd_controller.rb lors de create et update :&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;@cd.save_cached_tag_list
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;ps:&lt;/strong&gt; vivement le tuto sur maps !&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Merci pour le tuto, c&#8217;est trés clair <img src='http://www.stoneageblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>

<p>Quelques remarques (perfectionnistes) sur la performance, suite à la lecture et l&#8217;utilisation de <a href="http://agilewebdevelopment.com/plugins/acts_as_taggable_on_steroids">acts&#95;as&#95;taggable&#95;on&#95;steroids</a>   :</p>

<p><strong>1. Ajouter les index à la migration</strong></p>

<p>Voir le acts&#95;as&#95;taggable&#95;migration généré par le plugin</p>

<pre><code>add_index :taggings, :tag_id
add_index :taggings, [:taggable_id, :taggable_type]
</code></pre>

<p><strong>2. Optimiser le calcul d&#8217;occurence des tags</strong></p>

<p>On calcule t.count.to&#95;i une seule fois si possible, et un <em>if-elsif</em> évite ici le test de deux conditions exclusives. Un petit <em>1000.times do</em> sert à comprendre la situation lorsqu&#8217;il y a beaucoup de tag <img src='http://www.stoneageblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>

<pre><code># 1000.times do 
tags.each { |t| 
    count = t.count.to_i
    if count &amp;gt; max 
        max = count
    elsif count &amp;lt; min 
        min = count
    end
}
# end
</code></pre>

<p><strong>2bis. Ou bien utiliser un cache&#8230;</strong></p>

<p>Un petit migrate pour ajouter un champ de cache en base :</p>

<pre><code>add_column :cds, :cached_tag_list, :string
</code></pre>

<p>Puis mettre à jour le cache dans cd_controller.rb lors de create et update :</p>

<pre><code>@cd.save_cached_tag_list
</code></pre>

<p><strong>ps:</strong> vivement le tuto sur maps !</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : Tyna</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-8961</link>
		<dc:creator>Tyna</dc:creator>
		<pubDate>Mon, 10 Sep 2007 19:04:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-8961</guid>
		<description>&lt;p&gt;Man you don&#039;t even know how long I&#039;ve waited for this since disabling my own Movable Type widget (that doesn&#039;t work since Haloscan bypasses that code).&lt;/p&gt;

&lt;p&gt;THANK YOU!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Man you don&#8217;t even know how long I&#8217;ve waited for this since disabling my own Movable Type widget (that doesn&#8217;t work since Haloscan bypasses that code).</p>

<p>THANK YOU!</p>]]></content:encoded>
	</item>
	<item>
		<title>Par : Pierre</title>
		<link>http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/comment-page-1/#comment-6194</link>
		<dc:creator>Pierre</dc:creator>
		<pubDate>Sun, 29 Jul 2007 20:55:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.stoneageblog.com/articles/2007/06/03/nuage-de-tag-avec-ruby-on-rails-acts_as_taggable/#comment-6194</guid>
		<description>&lt;p&gt;C&#039;est vrai, merci beaucoup pour vos articles Pierre !&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>C&#8217;est vrai, merci beaucoup pour vos articles Pierre !</p>]]></content:encoded>
	</item>
</channel>
</rss>
