<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Ruby on Rails</title>
	<atom:link href="http://medrails.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://medrails.wordpress.com</link>
	<description>for All Medical Heathcare Providers - &#34;세줄의 마법사 루비온레일즈&#34;</description>
	<lastBuildDate>Sat, 17 Dec 2011 22:44:59 +0000</lastBuildDate>
	<language>ko</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='medrails.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/811eef93c2cebe0e77c65d74699f3de5?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Ruby on Rails</title>
		<link>http://medrails.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://medrails.wordpress.com/osd.xml" title="Ruby on Rails" />
	<atom:link rel='hub' href='http://medrails.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Using RVM rubies with Passenger</title>
		<link>http://medrails.wordpress.com/2011/10/10/using-rvm-rubies-with-passenger/</link>
		<comments>http://medrails.wordpress.com/2011/10/10/using-rvm-rubies-with-passenger/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 15:20:48 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
		
		<guid isPermaLink="false">http://medrails.wordpress.com/?p=389</guid>
		<description><![CDATA[RVM will allow you to use any of it&#8217;s MRI/YARV rubies with passenger very easily. Passenger Passenger is essentially &#8216;mod_ruby&#8217; for both Nginx and Apache. You may select *exactly one* Ruby to run all of your Passenger Ruby applications with. If you need to run more than one Ruby interpreter then you should choose the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=389&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>RVM will allow you to use any of it&#8217;s MRI/YARV rubies with passenger very easily.</p>
<h1>Passenger</h1>
<p>Passenger is essentially &#8216;mod_ruby&#8217; for both Nginx and Apache. You may select *exactly one* Ruby to run all of your Passenger Ruby applications with. If you need to run more than one Ruby interpreter then you should choose the most common one as Passenger Ruby. You then use proxy pass to external application servers such as Passenger Standalone, Unicorn, Thin, Mongrel, Mongrel2, etc&#8230; in order to accomplish running different applications under different rubies. For a full explanation of this (with pretty pictures!) see the <a href="http://blog.phusion.nl/2010/09/21/phusion-passenger-running-multiple-ruby-versions/"> post on Phusion&#8217;s Blog </a></p>
<h1>Passenger *3*</h1>
<h2>Installing Nginx/Apache with Passenger</h2>
<p>First of all there&#8217;s passenger-install-apache2-module and passenger-install-nginx-module. At the end of the installation it outputs a PassengerRuby configuration snippet for the web server. Its value is set to the RVM Ruby wrapper script that corresponds with the RVM Ruby and RVM gemset that was used to run the installer. This should be all you need for configuration of Passenger 3!</p>
<p>If it&#8217;s not, here&#8217;s what you might have to do, almost all of this stolen from <a href="http://blog.ninjahideout.com/posts/the-path-to-better-rvm-and-passenger-integration">Darcy&#8217;s Blog Post</a></p>
<p>In your .rvmrc do:</p>
<pre>if [[ -s "/Users/sutto/.rvm/environments/ree-1.8.7-2010.02@my-app-name" ]] ; then
  . "/Users/sutto/.rvm/environments/ree-1.8.7-2010.02@my-app-name"
else
  rvm --create use  "ree-1.8.7-2010.02@my-app-name"
fi</pre>
<p>Then in the rails project, add a new file config/setup_load_paths.rb and add</p>
<pre>if ENV['MY_RUBY_HOME'] &amp;&amp; ENV['MY_RUBY_HOME'].include?('rvm')
  begin
    rvm_path     = File.dirname(File.dirname(ENV['MY_RUBY_HOME']))
    rvm_lib_path = File.join(rvm_path, 'lib')
    $LOAD_PATH.unshift rvm_lib_path
    require 'rvm'
    RVM.use_from_path! File.dirname(File.dirname(__FILE__))
  rescue LoadError
    # RVM is unavailable at this point.
    raise "RVM ruby lib is currently unavailable."
  end
end

# Select the correct item for which you use below.
# If you're not using bundler, remove it completely.
#
# # If we're using a Bundler 1.0 beta
# ENV['BUNDLE_GEMFILE'] = File.expand_path('../Gemfile', File.dirname(__FILE__))
# require 'bundler/setup'
#
# # Or Bundler 0.9...
# if File.exist?(".bundle/environment.rb")
#   require '.bundle/environment'
# else
#   require 'rubygems'
#   require 'bundler'
#   Bundler.setup
# end</pre>
<p>Please note that for Passenger 3 you now use the ruby wrapper script directly with no need to use the passenger_ruby wrapper.</p>
<h2>Starting Passenger Standalone</h2>
<p>Then there&#8217;s Passenger Standalone, i.e. &#8216;passenger start&#8217;. Passenger Standalone uses Nginx internally, and it writes a passenger_ruby directive to the Nginx configuration file. This directive points to the RVM Ruby wrapper script that corresponds with the RVM Ruby and RVM gemset that was used to run the &#8216;passenger start&#8217; command.</p>
<h2>Bundler Gotcha</h2>
<p>When using Bundler in your project, Passenger will try to be smart and only add to your $LOAD_PATH the gems listed in your Gemfile. This can lead to &#8220;unable to load&#8221; errors for your unlisted gems (this should only happen during development). You can check your run-time load path by adding</p>
<pre>f = File.open('/tmp/load_path', 'w')
f.write($:)
f.close</pre>
<p>to your app&#8217;s main file (before the &#8220;require&#8221; calls). You won&#8217;t be able to load any gems that are not in that load path.</p>
<h1>Passenger *2* with RVM</h1>
<h3>Select a Passenger Ruby and Generate Wrapper Scripts</h3>
<p>Run RVM using your desired Ruby interpreter, and pass the &#8216;&#8211;passenger&#8217; option. This will generate wrapper scripts in RVM&#8217;s bin directory (see Notes below). These wrapper scripts ensure environment variables such as GEM_HOME and GEM_PATH are set correctly for applications run by passenger. E.g:</p>
<pre>rvm ree --passenger</pre>
<p>Alternatively, you can use the rvm wrapper command directly:</p>
<pre>rvm wrapper ree@ninjas passenger</pre>
<h3>Install Passenger</h3>
<pre>rvm ree
gem install passenger
rvmsudo passenger-install-nginx-module</pre>
<p>Or if you are forced to use the tomahawk,</p>
<pre>rvmsudo passenger-install-apache2-module</pre>
<h3>Configure the Web Server</h3>
<p>For Nginx users, replace the passenger_ruby line with:</p>
<pre>passenger_ruby /home/wayne/.rvm/bin/passenger_ruby;</pre>
<p>For apache users, use:</p>
<pre>PassengerRuby /home/wayne/.rvm/bin/passenger_ruby</pre>
<p>Please note that if you installed rvm as root / are using a system wide ruby, instead of using /home/wayne/.rvm/bin/passenger_ruby as in the above examples, you&#8217;ll instead need to use /usr/local/rvm/bin/passenger_ruby.</p>
<h2>Notes</h2>
<ul>
<li>Add the passenger default user (PassengerDefaultUser/passenger_default_user) to the rvm group. On some systems this is &#8216;www-data&#8217; and on others it might be &#8216;http&#8217; or &#8216;www&#8217;. One telling sign that you forgot to do this would be spending the better part of a day trying to figure out bizarre fork-bomb-like symptoms on passenger spawn (::grin::).</li>
<li>Do no not forget to configure the production environment and/or to set the rails_env/RailsEnv variable to development into nginx.conf/httpd.conf for the virtual server config block. The RAILS_ENV defaults to &#8216;production&#8217;.</li>
<li>Be sure to change &#8216;/home/wayne&#8217; in the above examples to your own $HOME directory,</li>
<li>The &#8216;.rvm/bin/passenger_ruby&#8217; is actually what is known as a &#8216;wrapper script&#8217; which sets up the environment for the passenger so that it can find it&#8217;s gems, etc&#8230; and then exec&#8217;s the actual ruby binary.&#8221;</li>
<li>passenger_root/PassengerRoot Should be something similar to the following, which is for Passenger 2.2.11 installed under ree-1.8.7-2010.01.
<pre> passenger_root /home/millisami/.rvm/gems/ree-1.8.7-2010.01/gems/passenger-2.2.11</pre>
</li>
</ul>
<h2>Troubleshooting</h2>
<ul>
<li>The most common issue is forgetting the /bin/ part of the path to get the proper wrapper script:</li>
<li>The next most common issue is listening to the output of the passenger installation script with respect to where passenger_ruby/PassengerRuby are located. Be sure to use the wrapper script location as specified above. To be more clear, see the example below for Nginx config:
<pre>passenger_ruby /home/wayne/.rvm/bin/passenger_ruby;
* NOTICE THE '.rvm/bin' DIR  ^ ^ ^
* do NOT use the actual ruby binary in .rvm/rubies/{passenger_ruby}/bin/ruby
* do not listen to passenger's output for passenger_ruby as passenger is not aware of rvm.</pre>
<p>For system wide (root) installs the bin directory is /usr/local/rvm/bin instead:</p>
<pre>passenger_ruby /usr/local/rvm/bin/passenger_ruby;</pre>
</li>
</ul>
<h2>FAQ</h2>
<ul>
<li><strong>Q: Can I run multiple projects under passenger with each project on a different ruby version?</strong>A: Not at this time. Passenger currently only supports running it&#8217;s projects under *one* ruby. You can get this behavior using a proxy pass.</li>
<li><strong>Q: How do I use custom gemsets under passenger?</strong>A: Without bundler you can either set environment variables yourself in your config.ru like:
<pre>ENV["GEM_HOME"]=%x{"source ~/.bash_profile ; rvm ree@pancake ; rvm gemdir"}.strip</pre>
<p>Or, if you are already using rvmrc&#8217;s, you can use the rvm ruby api and config/setup_load_paths.rb in recent passenger versions by following the guide <a href="http://blog.ninjahideout.com/posts/the-path-to-better-rvm-and-passenger-integration">located here.</a></p>
<p>A: With bundler: Install bundler outside any gemset, switch back to the gemset you wish to use and run <tt>bundle install</tt> and restart the application (by touching tmp/restart.txt). This works becase bundler stores absolute paths inside <tt>.bundle/environment.rb</tt> which will be loaded by bundler directly. If this doesn&#8217;t work as expected, try running bundle install like so:</p>
<pre>bundle install $BUNDLE_PATH</pre>
<p>How can I use commands like passenger-status in conjunction with a user install but run them as root? Mainly the key to this is to use wildcards in the sudoers file as the following examples show.</p>
<pre>/usr/bin/env GEM_PATH=* GEM_HOME=* PATH=* passenger-status</pre>
</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/389/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=389&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/10/10/using-rvm-rubies-with-passenger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>DB Migration in Rails 3</title>
		<link>http://medrails.wordpress.com/2011/09/09/db-migration-in-rails-3/</link>
		<comments>http://medrails.wordpress.com/2011/09/09/db-migration-in-rails-3/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 03:58:55 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
		
		<guid isPermaLink="false">http://medrails.wordpress.com/?p=403</guid>
		<description><![CDATA[Rails 3.1로 업그레이드되면서, 마이그레이션 작업에 약간의 추가 메소드가 생겼습니다. 와 같이 명령을 수행할 때 만들어지는 마이그레이션 루비 파일의 내용을 보면 이전 up/down 메소드 대신 change 메소드 하나만 보이게 됩니다. 개발자로 하여금 코딩 시간을 줄일 수 있고 좀 더 지능적인 프레임워크로 진화하고 있는 느낌이 듭니다. 마이그레이션을 위해 실질적인 테이블을 물리적으로 만들기 위해서는 다음의 명령이 실행되어야 합니다 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=403&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Rails 3.1로 업그레이드되면서, 마이그레이션 작업에 약간의 추가 메소드가 생겼습니다.</p>
<p><pre class="brush: bash;">

$ rails g model post title:string body:text

</pre></p>
<p>와 같이 명령을 수행할 때 만들어지는 마이그레이션 루비 파일의 내용을 보면 이전  up/down 메소드 대신 change 메소드 하나만 보이게 됩니다. 개발자로 하여금 코딩 시간을 줄일 수 있고 좀 더 지능적인 프레임워크로 진화하고 있는 느낌이 듭니다.</p>
<p><pre class="brush: ruby;">
# in Rails 2.x
class CreatePosts &lt; ActiveRecord::Migration
   def self.up
      create_table :posts do |t|
         t.string :title
         t.text :body
         t.timestamps

      end
   end

   def self.down
      drop_table :posts
   end

end

# in Rails 3.1
class CreatePosts &lt; ActiveRecord::Migration

   def change
      create_table :posts do |t|
         t.string :title
         t.text :body
         t.timestamps
      end
   end

end
</pre></p>
<p>마이그레이션을 위해 실질적인 테이블을 물리적으로 만들기 위해서는 다음의 명령이 실행되어야 합니다</p>
<p><pre class="brush: bash;">

$ rake db:migration

</pre></p>
<p>와 같이 실행하면 아직 마이크레이션 되지 않은 마이그레이션 루비 파일들을 불러들여 실행하게 됩니다. 이러한 마이그레이션 루비파일들은 파일명 앞에 타임스탬프가 찍혀 있는데, 이렇게 마이그레이션 파일이 rake되면 해당 파일의 파일명 앞에 있는 타임스탬프가 schema_migrations 라는 테이블에 추가됩니다. 그래서 마이그레이션  rake 명령이 실행될 때 이 테이블을 검색해서 테이블에 파일의 타임스탬프가 있으면 수행을 하지 않게 됩니다.</p>
<p><pre class="brush: bash;">

$ rake db:migration:status

</pre></p>
<p>위의 명령을 수행하면 지금까지 수행되었던 마이그레이션 이력을 일견에 볼 수 있어 어디까지 마이그레이션 작업이 수행되었는지도 쉽게 알 수 있습니다.</p>
<p>자, 이렇게 마이그레이션을 위한 rake 작업을 한 후에 테이블을 수정할 상황이 발생할 경우, rake 작업을 취소하고 데이터베이스내 태이블을 롤백해야 하는데, 이 과정은 다음과 같습니다.</p>
<p><pre class="brush: bash;">

$ rake db:rollback

</pre></p>
<p>마이그레이션 작업이 취소되고 테이블이 롤백됩니다.</p>
<p>이후에 마이그레이션을 위한 루비 파일을 수정하고 다시 위에서 언급한 바와 같이 마이그레이션 rake 작업을 수행하면 됩니다.</p>
<p>때로는 특정 마이그레이션 파일을 롤백하고 싶은 경우가 있는데, 다음과 같이 VERSION= 다음에 해당 파일명 앞의 타임스탬프 숫자만을 추가해 주면 됩니다.</p>
<p><pre class="brush: bash;">
$ rake db:migrate:down VERSION=20080906120000
</pre></p>
<p>Rails 3.1의 change 메소드는 이러한 롤백과정에서 자동으로 반대기능을 하는 메소드를 추정해서 실행하게 됩니다.</p>
<p><pre class="brush: bash;">

$ rake db:migrate (in /home/rohit/code/migrahedron)

== CreatePosts: migrating ===========================
-- create_table(:posts)
-&gt; 0.0012s

== CreatePosts: migrated (0.0013s) =====================

$ rake db:rollback (in /home/rohit/code/migrahedron)

== CreatePosts: reverting(&quot;posts&quot;)
-&gt; 0.0007s

== CreatePosts: reverted (0.0008s)======================

</pre></p>
<p>그러나 자동으로 역방향 메소드를 실행하지 못하고 에러가 발생하는 경우가 있습니다.</p>
<p><pre class="brush: ruby;">

class RemoveTitleFromPost &lt; ActiveRecord::Migration
   def change
      remove_column :posts, :title
   end
end

</pre></p>
<p>$ rake db:rollback이런 경우에는 역방향 메소드 add_column이 호출될 때 정보가 부족하여, 즉, 데이터형에 대한 정보가 없기 때문에 에러가 발행하게 되는 것입니다.</p>
<p><pre class="brush: bash;">

== RemoveTitleFromPost: reverting =========================
rake aborted!

An error has occurred, this and all later migrations canceled:
ActiveRecord::IrreversibleMigration
(See full trace by running task with --trace)

</pre></p>
<p>이럴 경우에는 이전 버젼에서와 같이 up 또는 down 인스턴스 메소드를 구현해서 마이그레이션 루비 스크립트를 작성해 주어야 합니다.</p>
<p><pre class="brush: ruby;">

class RemoveTitleFromPost &lt; ActiveRecord::Migration
   def up
      remove_column :posts, :title
   end
   def down
      add_column :posts,:title,:string
   end
end

</pre></p>
<p><strong>주의</strong>:  self.up / self.down 클래스 메소드가 아니고 up / down 인스턴스 메소드로 작성해 주어야 합니다.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/403/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=403&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/09/09/db-migration-in-rails-3/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>jQuery로  Ajax 개발을 단순화하기</title>
		<link>http://medrails.wordpress.com/2011/06/24/jquery%eb%a1%9c-ajax-%ea%b0%9c%eb%b0%9c%ec%9d%84-%eb%8b%a8%ec%88%9c%ed%99%94%ed%95%98%ea%b8%b0/</link>
		<comments>http://medrails.wordpress.com/2011/06/24/jquery%eb%a1%9c-ajax-%ea%b0%9c%eb%b0%9c%ec%9d%84-%eb%8b%a8%ec%88%9c%ed%99%94%ed%95%98%ea%b8%b0/#comments</comments>
		<pubDate>Fri, 24 Jun 2011 02:39:31 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=400</guid>
		<description><![CDATA[jQuery는 JavaScript 라이브러리로서 JavaScript™와 Asynchronous JavaScript + XML (Ajax) 프로그래밍을 단순화 하는데 도움이 됩니다. JavaScript 라이브러리와는 달리, jQuery는 복잡한 코드를 간결하게 표현할 수 있는 독특한 철학이 있습니다. jQuery 원리, 기능과 특징을 배우고, 일반적인 Ajax 태스크도 수행하며, 플러그인으로 jQuery를 확장하는 방법도 알아봅니다. IBM DeveloperWorks에 있는 자료의 링크입니다.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=400&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>jQuery는 JavaScript 라이브러리로서 JavaScript™와 Asynchronous JavaScript + XML (Ajax) 프로그래밍을 단순화 하는데 도움이 됩니다. JavaScript 라이브러리와는 달리, jQuery는 복잡한 코드를 간결하게 표현할 수 있는 독특한 철학이 있습니다. jQuery 원리, 기능과 특징을 배우고, 일반적인 Ajax 태스크도 수행하며, 플러그인으로 jQuery를 확장하는 방법도 알아봅니다.</p>
<p><a href="http://www.ibm.com/developerworks/kr/library/x-ajaxjquery.html">IBM DeveloperWorks에 있는 자료의 링크입니다.</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/400/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/400/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/400/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=400&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/06/24/jquery%eb%a1%9c-ajax-%ea%b0%9c%eb%b0%9c%ec%9d%84-%eb%8b%a8%ec%88%9c%ed%99%94%ed%95%98%ea%b8%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>Ajax 마스터하기</title>
		<link>http://medrails.wordpress.com/2011/06/24/ajax-%eb%a7%88%ec%8a%a4%ed%84%b0%ed%95%98%ea%b8%b0/</link>
		<comments>http://medrails.wordpress.com/2011/06/24/ajax-%eb%a7%88%ec%8a%a4%ed%84%b0%ed%95%98%ea%b8%b0/#comments</comments>
		<pubDate>Fri, 24 Jun 2011 02:06:48 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[AJAX]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=395</guid>
		<description><![CDATA[좀 오래된 내용이지만,  Ajax 공부할 때 도움이 될 것같아서 링크를 걸어 둡니다. Part 1.  Ajax 소개 Part 2.  Javascript와 Ajax를 이용한 비동기식 요청 Part 3.  Ajax의 고급요청 및 응답 Part 4.  웹 응답에 DOM 활용하기 Part 5.  DOM 다루기 Part 6.  DOM 기반 웹어플리케이션 구현하기기 Part 7.  요청과 응답에 XML 사용하기 (1) Part 8.  요청과 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=395&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>좀 오래된 내용이지만,  Ajax 공부할 때 도움이 될 것같아서 링크를 걸어 둡니다.</p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro1.html">Part 1.  Ajax 소개</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro2/index.html">Part 2.  Javascript와 Ajax를 이용한 비동기식 요청</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro3/index.html">Part 3.  Ajax의 고급요청 및 응답</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro4/index.html">Part 4.  웹 응답에 DOM 활용하기</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro5/wa-ajaxintro5.html">Part 5.  DOM 다루기</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro6/index.html">Part 6.  DOM 기반 웹어플리케이션 구현하기기</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro7.html">Part 7.  요청과 응답에 XML 사용하기 (1)</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro8.html">Part 8.  요청과 응답에 XML 사용하기 (2)</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro9/index.html">Part 9.  Google Ajax Search API 사용하기</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro10/index.html">Part 10.  데이터 전송에 JSON 사용하기</a></p>
<p><a href="http://www.ibm.com/developerworks/kr/library/wa-ajaxintro11.html">Part 11.  서버측의 JSON</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/395/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/395/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/395/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=395&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/06/24/ajax-%eb%a7%88%ec%8a%a4%ed%84%b0%ed%95%98%ea%b8%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>WARN: tilt autoloading &#8216;sass&#8217; in a non thread-safe way; explicit require &#8216;sass&#8217; suggested.</title>
		<link>http://medrails.wordpress.com/2011/05/25/warn-tilt-autoloading-sass-in-a-non-thread-safe-way-explicit-require-sass-suggested/</link>
		<comments>http://medrails.wordpress.com/2011/05/25/warn-tilt-autoloading-sass-in-a-non-thread-safe-way-explicit-require-sass-suggested/#comments</comments>
		<pubDate>Wed, 25 May 2011 09:03:51 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[3.1버젼]]></category>
		<category><![CDATA[레일즈]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=386</guid>
		<description><![CDATA[Started GET &#8220;/&#8221; for 127.0.0.1 at 2011-05-25 16:44:30 +0900 Processing by WelcomeController#index as HTML Rendered welcome/index.html.erb within layouts/application (18.0ms) Completed 200 OK in 74ms (Views: 73.7ms &#124; ActiveRecord: 0.0ms) Started GET &#8220;/assets/application.js&#8221; for 127.0.0.1 at 2011-05-25 16:44:30 +0900 Compiled ~/Projects/wordstory/app/assets/javascripts/application.js  (5ms)  (pid 1152) Compiled ~/.rvm/gems/ruby-1.9.2-p180@HEAD_GEMSET/gems/jquery-rails-1.0.7/vendor/assets/javascripts/jquery.js  (4ms)  (pid 1152) Compiled ~/.rvm/gems/ruby-1.9.2-p180@HEAD_GEMSET/gems/jquery-rails-1.0.7/vendor/assets/javascripts/jquery_ujs.js  (1ms)  (pid 1152) Compiled ~/Projects/wordstory/app/assets/javascripts/welcome.js.coffee  [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=386&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Started GET &#8220;/&#8221; for 127.0.0.1 at 2011-05-25 16:44:30 +0900<br />
Processing by WelcomeController#index as HTML<br />
Rendered welcome/index.html.erb within layouts/application (18.0ms)<br />
Completed 200 OK in 74ms (Views: 73.7ms | ActiveRecord: 0.0ms)</p>
<p>Started GET &#8220;/assets/application.js&#8221; for 127.0.0.1 at 2011-05-25 16:44:30 +0900<br />
Compiled ~/Projects/wordstory/app/assets/javascripts/application.js  (5ms)  (pid 1152)<br />
Compiled ~/.rvm/gems/ruby-1.9.2-p180@HEAD_GEMSET/gems/jquery-rails-1.0.7/vendor/assets/javascripts/jquery.js  (4ms)  (pid 1152)<br />
Compiled ~/.rvm/gems/ruby-1.9.2-p180@HEAD_GEMSET/gems/jquery-rails-1.0.7/vendor/assets/javascripts/jquery_ujs.js  (1ms)  (pid 1152)<br />
Compiled ~/Projects/wordstory/app/assets/javascripts/welcome.js.coffee  (194ms)  (pid 1152)</p>
<p>Served asset /application.js &#8211; 304 Not Modified  (0.214s)  (pid 1152)</p>
<p>WARN: tilt autoloading &#8216;sass&#8217; in a non thread-safe way; explicit require &#8216;sass&#8217; suggested.<br />
WARN: tilt autoloading &#8216;sass/plugin&#8217; in a non thread-safe way; explicit require &#8216;sass/plugin&#8217; suggested.</p>
<p>Started GET &#8220;/assets/application.css&#8221; for 127.0.0.1 at 2011-05-25 16:44:31 +0900<br />
Compiled ~/Projects/wordstory/app/assets/stylesheets/application.css  (1ms)  (pid 1152)<br />
Compiled ~/Projects/wordstory/app/assets/stylesheets/welcome.css.scss  (132ms)  (pid 1152)</p>
<p>Served asset /application.css &#8211; 304 Not Modified  (0.139s)  (pid 1152)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/386/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=386&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/25/warn-tilt-autoloading-sass-in-a-non-thread-safe-way-explicit-require-sass-suggested/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>Mountable Engines in Rails 3.1</title>
		<link>http://medrails.wordpress.com/2011/05/24/mountable-engines-in-rails-3-1/</link>
		<comments>http://medrails.wordpress.com/2011/05/24/mountable-engines-in-rails-3-1/#comments</comments>
		<pubDate>Tue, 24 May 2011 08:28:26 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[3.1버젼]]></category>
		<category><![CDATA[rails engine]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=382</guid>
		<description><![CDATA[동일한 프로세스에서 하나 이상의 레일즈 어플리케이션을 돌릴 수 있게 하는 어플리케이션 환경을 말한다. 컨셉을 잘 설명해 놓은 블로그가 있군요. http://piotrsarnacki.com/2010/09/14/mountable-engines/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=382&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>동일한 프로세스에서 하나 이상의 레일즈 어플리케이션을 돌릴 수 있게 하는 어플리케이션 환경을 말한다.</p>
<p>컨셉을 잘 설명해 놓은 블로그가 있군요.</p>
<p><a href="http://piotrsarnacki.com/2010/09/14/mountable-engines/" target="_blank">http://piotrsarnacki.com/2010/09/14/mountable-engines/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/382/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=382&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/24/mountable-engines-in-rails-3-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>레일즈 3.1의 태풍이 불어 닥친다.</title>
		<link>http://medrails.wordpress.com/2011/05/24/%eb%a0%88%ec%9d%bc%ec%a6%88-3-1%ec%9d%98-%ed%83%9c%ed%92%8d%ec%9d%b4-%eb%b6%88%ec%96%b4-%eb%8b%a5%ec%b9%9c%eb%8b%a4/</link>
		<comments>http://medrails.wordpress.com/2011/05/24/%eb%a0%88%ec%9d%bc%ec%a6%88-3-1%ec%9d%98-%ed%83%9c%ed%92%8d%ec%9d%b4-%eb%b6%88%ec%96%b4-%eb%8b%a5%ec%b9%9c%eb%8b%a4/#comments</comments>
		<pubDate>Tue, 24 May 2011 04:11:09 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[3.1버젼]]></category>
		<category><![CDATA[레일즈]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Spirochets]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=380</guid>
		<description><![CDATA[지난 5월5일 어린이날 이후 레일즈의 세계는 새로운 국면을 맞이하는 것 같다. 진정한 개발자들의 편의를 제공하기 시작한 것이다. 이전 버젼까지는 자바라이브러리 Prototype이 기본 내장되었지만, 3.1버젼부터는 jQuery가 기본내장되어 오히려 Prototype 을 설치하려면 -j prototype 이라는 옵션을 이용하여 웹어플리케이션을 생성해야 할 판이 되었다. 눈에 띄는 변화 중에 하나는 웹어플리케이션 디렉토리 구조에 약간의 변화가 생겼다. public/ 디렉토리에 있는 images/, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=380&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>지난 5월5일 어린이날 이후 레일즈의 세계는 새로운 국면을 맞이하는 것 같다.</p>
<p>진정한 개발자들의 편의를 제공하기 시작한 것이다.</p>
<p>이전 버젼까지는 자바라이브러리 Prototype이 기본 내장되었지만, 3.1버젼부터는 jQuery가 기본내장되어 오히려 Prototype 을 설치하려면 -j prototype 이라는 옵션을 이용하여 웹어플리케이션을 생성해야 할 판이 되었다.</p>
<p>눈에 띄는 변화 중에 하나는 웹어플리케이션 디렉토리 구조에 약간의 변화가 생겼다. public/ 디렉토리에 있는 images/, javascripts/, stylesheets/  세개의 디렉토리가 app/assests/ 디렉토리로 이사를 갔다는 것이다. 결국 assests 디렉토리에 있는 이미지, 자바스크립트, 스타일시트까지도 공개하기 않게 된다는 것이다. 공개되는 것은 Spirochets 라이브러리를 이용하여 다수의 자바스크립트와 css 파일들을 각각 application .js와 application.css 로 합쳐서 클라이언트 브라우져로 보내지게 되는 것이다. 이때 jQuery도 application.js파일로 합쳐져서 보내지게 된다.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/380/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/380/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/380/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=380&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/24/%eb%a0%88%ec%9d%bc%ec%a6%88-3-1%ec%9d%98-%ed%83%9c%ed%92%8d%ec%9d%b4-%eb%b6%88%ec%96%b4-%eb%8b%a5%ec%b9%9c%eb%8b%a4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>Coffeescript 에 대한 오늘 올라온 railscasts.com 강좌입니다.</title>
		<link>http://medrails.wordpress.com/2011/05/24/coffeescript-%ec%97%90-%eb%8c%80%ed%95%9c-%ec%98%a4%eb%8a%98-%ec%98%ac%eb%9d%bc%ec%98%a8-railscasts-com-%ea%b0%95%ec%a2%8c%ec%9e%85%eb%8b%88%eb%8b%a4/</link>
		<comments>http://medrails.wordpress.com/2011/05/24/coffeescript-%ec%97%90-%eb%8c%80%ed%95%9c-%ec%98%a4%eb%8a%98-%ec%98%ac%eb%9d%bc%ec%98%a8-railscasts-com-%ea%b0%95%ec%a2%8c%ec%9e%85%eb%8b%88%eb%8b%a4/#comments</comments>
		<pubDate>Mon, 23 May 2011 23:31:18 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[3.1버젼]]></category>
		<category><![CDATA[레일즈]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=376</guid>
		<description><![CDATA[coffeescirpt를 레일즈에 적용하는 방법<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=376&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://railscasts.com/episodes/267-coffeescript-basics?autoplay=true" target="_blank">coffeescirpt를 레일즈에 적용하는 방법</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/376/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=376&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/24/coffeescript-%ec%97%90-%eb%8c%80%ed%95%9c-%ec%98%a4%eb%8a%98-%ec%98%ac%eb%9d%bc%ec%98%a8-railscasts-com-%ea%b0%95%ec%a2%8c%ec%9e%85%eb%8b%88%eb%8b%a4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>루비언어에서 심볼의 개념 이해하기</title>
		<link>http://medrails.wordpress.com/2011/05/24/%eb%a3%a8%eb%b9%84%ec%96%b8%ec%96%b4%ec%97%90%ec%84%9c-%ec%8b%ac%eb%b3%bc%ec%9d%98-%ea%b0%9c%eb%85%90-%ec%9d%b4%ed%95%b4%ed%95%98%ea%b8%b0/</link>
		<comments>http://medrails.wordpress.com/2011/05/24/%eb%a3%a8%eb%b9%84%ec%96%b8%ec%96%b4%ec%97%90%ec%84%9c-%ec%8b%ac%eb%b3%bc%ec%9d%98-%ea%b0%9c%eb%85%90-%ec%9d%b4%ed%95%b4%ed%95%98%ea%b8%b0/#comments</comments>
		<pubDate>Mon, 23 May 2011 21:15:44 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[루비 Ruby]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[symbol]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=363</guid>
		<description><![CDATA[http://www.troubleshooters.com/codecorn/ruby/symbols.htm 지금까지 루비, 특히 레일즈에서 사용되는 심볼을 어렴풋하게나마 이해하고 있었는데, 위의 링크의 내용을 읽어 보고 루비의 심볼에 대한 확실한 개념을 알게 되었다. 1. 심볼은 integer나 string으로 변환될 수 있다. 그러나 심볼이란 string으로 대신해서 사용할 수 있는 상수(constant)와 같은 것이지만 같은 String을 반복해서 사용할 때처럼 메모리를 소모하지 않아 메모리 절약에 도움이 될 수 있다. 동일한 심볼을 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=363&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.troubleshooters.com/codecorn/ruby/symbols.htm" target="_blank">http://www.troubleshooters.com/codecorn/ruby/symbols.htm</a></p>
<p>지금까지 루비, 특히 레일즈에서 사용되는 심볼을 어렴풋하게나마 이해하고 있었는데, 위의 링크의 내용을 읽어 보고 루비의 심볼에 대한 확실한 개념을 알게 되었다.</p>
<p>1. 심볼은 integer나 string으로 변환될 수 있다. 그러나 심볼이란 string으로 대신해서 사용할 수 있는 상수(constant)와 같은 것이지만 같은 String을 반복해서 사용할 때처럼 메모리를 소모하지 않아 메모리 절약에 도움이 될 수 있다. 동일한 심볼을 수천번 반복에서 코딩에 사용해도 심볼값은 하나의 주소값만을 가진다.</p>
<p>2. 심볼은 런타임때 값을 변경할 수 없다.(immutable)</p>
<p>3. 심볼은 .to_i 나 .to_s 메소드를 이용해서 의미없는 공유의 정수값이나 심볼이름과 같은 문자열을 간접적으로 얻을 수 있지만, 심볼 자체로는 String객체의 그 많은 메소드들을 사용할 수 없다. 왜냐하면 심볼은 Symbol 객체이기 때문이다.</p>
<p>아래는 위 링크의 마지막에 있는 요약을 복사해 놓은 것이다.</p>
<ul>
<li>A Ruby symbol looks like a colon followed by characters. (:mysymbol)</li>
<li>A Ruby symbol is a thing that has both a number (integer) and a string.</li>
<li>The value of a Ruby symbol&#8217;s string part is the name of the symbol, minus the leading colon.</li>
<li>A Ruby symbol cannot be changed at runtime.</li>
<li>Neither its string representation nor its integer representation can be changed at runtime.</li>
<li>Ruby symbols are useful in preventing modification.</li>
<li>Like most other things in Ruby, a symbol is an object.</li>
<li>When designing a program, you can usually use a string instead of a symbol.</li>
<ul>
<li>Except when you must guarantee that the string isn&#8217;t modified.</li>
</ul>
<li>Symbol objects do not have the rich set of instance methods that String objects do.</li>
<li>After the first usage of :mysymbol all further useages of :mysymbol take no further memory &#8212; they&#8217;re all the same object.</li>
<li>Ruby symbols save memory over large numbers of identical literal strings.</li>
<li>Ruby symbols enhance runtime speed to at least some degree.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/363/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=363&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/24/%eb%a3%a8%eb%b9%84%ec%96%b8%ec%96%b4%ec%97%90%ec%84%9c-%ec%8b%ac%eb%b3%bc%ec%9d%98-%ea%b0%9c%eb%85%90-%ec%9d%b4%ed%95%b4%ed%95%98%ea%b8%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
		<item>
		<title>Rails 3.1 RC 버젼이 릴리스되었습니다.</title>
		<link>http://medrails.wordpress.com/2011/05/23/rails-3-1-rc-%eb%b2%84%ec%a0%bc%ec%9d%b4-%eb%a6%b4%eb%a6%ac%ec%8a%a4%eb%90%98%ec%97%88%ec%8a%b5%eb%8b%88%eb%8b%a4/</link>
		<comments>http://medrails.wordpress.com/2011/05/23/rails-3-1-rc-%eb%b2%84%ec%a0%bc%ec%9d%b4-%eb%a6%b4%eb%a6%ac%ec%8a%a4%eb%90%98%ec%97%88%ec%8a%b5%eb%8b%88%eb%8b%a4/#comments</comments>
		<pubDate>Mon, 23 May 2011 01:57:07 +0000</pubDate>
		<dc:creator>Lioncat</dc:creator>
				<category><![CDATA[레일즈 Ruby on Rails]]></category>
		<category><![CDATA[3.1버젼]]></category>
		<category><![CDATA[레일즈]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://medrails.wordpress.com/?p=360</guid>
		<description><![CDATA[5월22일자로 beta1 딱지를 띤 Release Candidate 버젼이 릴리스되었습니다. 레일즈의 또 다른 변화를 예감하네요. 이전 버젼의 어플리케이션을 3.1버젼으로 업그레이드하는 것이 문제겠습니다. 다시 프로그램이 하는 것이 더 효율적일까요?<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=360&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>5월22일자로 beta1 딱지를 띤 Release Candidate 버젼이 릴리스되었습니다. 레일즈의 또 다른 변화를 예감하네요. 이전 버젼의 어플리케이션을 3.1버젼으로 업그레이드하는 것이 문제겠습니다. 다시 프로그램이 하는 것이 더 효율적일까요?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/medrails.wordpress.com/360/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/medrails.wordpress.com/360/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/medrails.wordpress.com/360/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=medrails.wordpress.com&amp;blog=10824989&amp;post=360&amp;subd=medrails&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://medrails.wordpress.com/2011/05/23/rails-3-1-rc-%eb%b2%84%ec%a0%bc%ec%9d%b4-%eb%a6%b4%eb%a6%ac%ec%8a%a4%eb%90%98%ec%97%88%ec%8a%b5%eb%8b%88%eb%8b%a4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>37.539808 126.950521</georss:point>
		<geo:lat>37.539808</geo:lat>
		<geo:long>126.950521</geo:long>
		<media:content url="http://1.gravatar.com/avatar/31f1e018106c939ef79ef749adf36e78?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">닥터최</media:title>
		</media:content>
	</item>
	</channel>
</rss>
