2011年4月15日 星期五

let rvm (ruby version management) to manage your developing environment for ruby and ruby on rails..

To install rvm

$bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)


$rvm --version

rvm 1.6.1 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]

To list all rvm known packages

$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.6-head
[ruby-]1.8.7[-p334]
[ruby-]1.8.7-head
[ruby-]1.9.1-p378
[ruby-]1.9.1[-p431]
[ruby-]1.9.1-head
[ruby-]1.9.2[-p180]
[ruby-]1.9.2-head
ruby-head

# GoRuby
goruby

# JRuby
jruby-1.2.0
jruby-1.3.1
jruby-1.4.0
jruby[-1.6.0]
jruby-head

# Rubinius
rbx-1.0.1
rbx-1.1.0
rbx-1.1.1
rbx-1.2.0
rbx-1.2.1
rbx-1.2.2
rbx-1.2.3
rbx[-head]

# Ruby Enterprise Edition
ree-1.8.6
ree[-1.8.7][-2011.03]
ree-1.8.6-head
ree-1.8.7-head

# Kiji
kiji

# MagLev
maglev[-25665]
maglev-head

# Mac OS X Snow Leopard Only
macruby[-0.10] # the default macruby
macruby-nightly
macruby-head # Build from the macruby git repository

# IronRuby -- Not implemented yet.
ironruby-0.9.3
ironruby-1.0-rc2
ironruby-head

user rvm to install your ruby packages.

$ vi ~/.profile

add following line to your .profile. all your installations with rvm will take effect.

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.


$ source .profile

$ ruby --version
ruby 1.8.7 (2008-08-11 patchlevel 72) [powerpc-darwin9.8.0]

$ rails --version
Rails 3.0.6

$ rake --version
rake, version 0.8.7

$ gem --version
1.7.2

2011年3月6日 星期日

create a new view and routes to view in Rails.

rails generate controller home index

vi config/routes.rb

add resources :timelines

rake routes (to view all routes in this app).

在 ubuntu 10.04 安裝 rails 3.0

http://www.web2linux.com/05/installing-rails-3-on-ubuntu-10-04-lucid-lynx/

URL教你安裝 ruby and rvm

http://ithelp.ithome.com.tw/question/10051215

如果你有 rvm, (如果還沒安裝, 趕快裝!)

我用它來升級 ruby 版本

$ rvm install ruby-1.9.2
Installing Ruby from source to: /home/ming/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...

ruby-1.9.2-p180 - #fetching
ruby-1.9.2-p180 - #extracted to /home/ming/.rvm/src/ruby-1.9.2-p180 (already extracted)
ruby-1.9.2-p180 - #configuring
ruby-1.9.2-p180 - #compiling
ruby-1.9.2-p180 - #installing
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
ming@ming-Presario-V3000-GM179PA-AB0:~$ rvm install ruby-1.9.2
Installing Ruby from source to: /home/ming/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...

ruby-1.9.2-p180 - #fetching
ruby-1.9.2-p180 - #extracted to /home/ming/.rvm/src/ruby-1.9.2-p180 (already extracted)
ruby-1.9.2-p180 - #configuring
ruby-1.9.2-p180 - #compiling
ruby-1.9.2-p180 - #installing
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby

$ rvm install ruby-1.9.2
Installing Ruby from source to: /home/ming/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...

ruby-1.9.2-p180 - #fetching
ruby-1.9.2-p180 - #extracted to /home/ming/.rvm/src/ruby-1.9.2-p180 (already extracted)
ruby-1.9.2-p180 - #configuring
ruby-1.9.2-p180 - #compiling
ruby-1.9.2-p180 - #installing
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Removing old Rubygems files...
Installing rubygems dedicated to ruby-1.9.2-p180...
Installing rubygems for /home/ming/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - Updating #rubygems to the latest.
Installation of rubygems completed successfully.
ruby-1.9.2-p180 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-1.9.2-p180 - #importing default gemsets (/home/ming/.rvm/gemsets/)

what is a symble in Ruby?

:north
:a
:aSymble

它就是一個不需要 value (有值), 但要代表一個與衆不同的 id.

demo:


$ irb
irb(main):001:0> :north
=> :north
irb(main):002:0> a = :north
=> :north
irb(main):003:0> b = :north
=> :north
irb(main):004:0> a == b
=> true
irb(main):005:0> :north = 1
SyntaxError: compile error
(irb):5: syntax error, unexpected '=', expecting $end
:north = 1
^
from (irb):5
from :0
irb(main):006:0> puts :north
north
=> nil
irb(main):007:0> puts :north.to_s
north
=> nil
irb(main):008:0> :north == :north
=> true
irb(main):009:0> a == :north
=> true
irb(main):010:0> a = :north
=> :north
irb(main):011:0> a == :north
=> true
irb(main):012:0>