<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kolodvor &#187; Ruby</title>
	<atom:link href="http://www.kolodvor.net/tag/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kolodvor.net</link>
	<description>ruby, rails, javascript, jquery, ...</description>
	<lastBuildDate>Mon, 16 Jan 2012 15:24:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Simple Search Rails plugin</title>
		<link>http://www.kolodvor.net/2010/06/26/simple-search-rails-plugin/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=simple-search-rails-plugin</link>
		<comments>http://www.kolodvor.net/2010/06/26/simple-search-rails-plugin/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 08:31:11 +0000</pubDate>
		<dc:creator>vlado</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[activerecord]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[simple]]></category>

		<guid isPermaLink="false">http://kolodvor.net/?p=234</guid>
		<description><![CDATA[SimpleSearch brings simple search to ActiveRecord. It ads simple_search named scope that accepts query as parameter. The idea is that you provide the query and plugin does the rest (splits query to keywords and compose where statement). This can be &#8230; <a href="http://www.kolodvor.net/2010/06/26/simple-search-rails-plugin/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>SimpleSearch brings simple search to ActiveRecord. It ads <span class="code">simple_search</span> named scope that accepts query as parameter.</p>
<p>The idea is that you provide the query and plugin does the rest (splits query to keywords and compose where statement).</p>
<p>This can be very useful in case you just want to filter list of records by some query, you have autocomplete field, &#8230; or something similar.</p>
<p><span id="more-234"></span></p>
<h3>Example</h3>
<p><strong>View</strong></p>
<pre class="code">
  &lt;% form_tag request.path, :method => 'get' do %>
    &lt;%= text_field_tag :query, params[:query] %>
  &lt;% end %>
</pre>
<p><strong>Model</strong></p>
<pre class="code">
  class User < ActiveRecord::Base
    acts_as_simply_searchable
  end

  # Columns: id, login, email, crypted_password, salt
</pre>
<p><strong>Controller</strong></p>
<pre class="code">
  class UsersController < ApplicationController
    def index
      @users = User.simple_search(params[:query]).all
    end
  end
</pre>
<p><strong>Query examples</strong></p>
<p>Simple query</p>
<pre class="code">
  User.simple_search("vlado")
  # => SELECT * FROM "users" WHERE (users.id LIKE '%vlado%' OR users.login LIKE '%vlado%' OR users.email LIKE '%vlado%' OR users.crypted_password LIKE '%vlado%' OR users.salt LIKE '%vlado%')
</pre>
<p>You can also provide <span class="code">:columns => :column1, :column2, ...</span> option to limit search only to those columns</p>
<pre class="code">
  class User < ActiveRecord::Base
    acts_as_simply_searchable :columns => :login, :email
  end
</pre>
<p></p>
<pre class="code">
  User.simple_search("vlado")
  # => SELECT * FROM "users" WHERE (users.login LIKE '%vlado%' OR users.email LIKE '%vlado%')
</pre>
<p>More complex query</p>
<pre class="code">
  User.simple_search("vlado, cingel")
  # will search for users matching 'vlado' and 'cingel' keywords
  # => SELECT * FROM "users" WHERE ((users.login LIKE '%vlado%' OR users.email LIKE '%vlado%') AND (users.login LIKE '%cingel%' OR users.email LIKE '%cingel%'))
</pre>
<p><strong>NOTE: With proper use of indexes this plugin can work quite well in most cases, but in case you have a large and complex database it is usually much better idea to use some search daemon like <a href="http://freelancing-god.github.com/ts/en/">Thinking Sphinx</a>.</strong></p>
<h3>More info</h3>
<p><a href="http://github.com/cingel/simple_search">http://github.com/cingel/simple_search</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kolodvor.net/2010/06/26/simple-search-rails-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ruby library for parsing, validating and formatting phone numbers</title>
		<link>http://www.kolodvor.net/2010/01/04/ruby-library-for-parsing-validating-and-formatting-phone-numbers/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ruby-library-for-parsing-validating-and-formatting-phone-numbers</link>
		<comments>http://www.kolodvor.net/2010/01/04/ruby-library-for-parsing-validating-and-formatting-phone-numbers/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 16:19:39 +0000</pubDate>
		<dc:creator>vlado</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[phone numbers]]></category>

		<guid isPermaLink="false">http://kolodvor.net/?p=107</guid>
		<description><![CDATA[Tomislav Car has just released Phone, Ruby library for phone number parsing, validation and formatting. It should save you a lot of time if you need any of the following: * you have area where users input phone numbers in &#8230; <a href="http://www.kolodvor.net/2010/01/04/ruby-library-for-parsing-validating-and-formatting-phone-numbers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://github.com/carr">Tomislav Car</a> has just released <a href="http://github.com/carr/phone">Phone</a>, Ruby library for phone number parsing, validation and formatting. It should save you a lot of time if you need any of the following:</p>
<p>* you have area where users input phone numbers in many different formats<br />
* output phone numbers in specific format<br />
* you need to send SMS messages from your app<br />
* &#8230;</p>
<p><span id="more-107"></span></p>
<p>You can initialize new Phone object with <code>Phone.new</code></p>
<pre class="code">
  Phone.new('5125486', '91', '385')
</pre>
<p>or</p>
<pre class="code">
  Phone.new(:number => '5125486', :area_code => '91', :country_code => '385')
</pre>
<p>Parsing is done using <code>Phone.parse</code> method</p>
<pre class="code">
    Phone.parse '091/512-5486', :country_code => '385'
    Phone.parse '(091) 512 5486', :country_code => '385'
</pre>
<p>It is smart to set default contry code first so you don&#8217;t have to provide it as option every time</p>
<pre class="code">
    Phone.default_country_code = '385'
    Phone.parse '091/512-5486'
    Phone.parse '(091) 512 5486'
</pre>
<p><span style="text-decoration:line-through">Fow now, Phone works only for Croatian, Slovenian, Bosnian and Serbian phone numbers, but Tomislav is collecting data to support other countries.</span></p>
<p><a href="http://github.com/carr/phone">Go check it out</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kolodvor.net/2010/01/04/ruby-library-for-parsing-validating-and-formatting-phone-numbers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

