minhkhoinguyen

Privacy Account
Staff member
25/4/15
10,850
667
113
Hà Nội
minhkhoinguyen.com
ruby_and_rails.jpg

Ruby on Rails là gì?

Ruby On rails là một Framework cho phép phát triển ứng dụng Web gồm 2 phần cơ bản:
  • Phần ngôn ngữ Ruby: "Ruby là một ngôn lập trình mã nguồn mở, linh hoạt, với một sự nổi bật về sự đơn giản dễ dùng và hữu ích. Nó có cú pháp "tao nhã" và tự nhiên dễ đọc và dễ dàng để viết".
  • Phần Framework Rails bao gồm nhiều thư viện liên kết. Ruby On Rails được ra đời một cách hoàn hảo dành cho những ai luôn "mải miết đi tìm" câu trả lời: tại sao những lập trình viên luôn tìm mọi cách để phát triển những phần mềm, ứng dụng Web… để người sử dụng được thuận tiện nhất, nhưng lại không "thuận tiện" cho người lập trình mỗi khi chương trình càng đơn giản thì bên trong nó lại càng phức tạp, khó chỉnh sửa khi cần thiết, làm cho công việc của người lập trình viên "cảm thấy mệt mỏi" hơn. Ruby On Rails đã trả lời được câu hỏi đó.
Trong bài viết này mình sẽ hướng dẫn các bạn cấu hình và cài đặt Ruby On Rails cho Mac OS X. Còn dùng ra sao thì mình không quản cũng ko support.

Tổng quan
Chúng ta cần khoảng 30 phút và kết nối internet để thực hiện cài đặt môi trường phát triển Ruby On Rails trên Mac OS X Yosemite 10.10.x
Nếu đang sử dụng các phiên bản OS X trước đây vui lòng yêu cầu mình sẽ viết bài tham khảo sau. Còn trong bài viết này không khuyến khích áp dụng dưới OS X Yosemite 10.10.x

Cài đặt Homebrew
Homebrew được biết đến như một cách cho phép chúng ta dễ dàng cài đặt và biên dịch các software packages từ các nguồn như github...

Để cài đặt Homebrew yêu cầu bạn phải cài đặt XCode CommandLine Tools. Cái này nếu chưa cài, thì hệ thống sẽ tự load về nên ko cần quan tâm, cứ có thông báo thì Yes.

Mở Ternimal và thực hiện câu lệnh bên dưới để cài đặt Homebrew:

Mã:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Cài đặt Ruby
Trong bài hướng dẫn này mình install phiên bản 2.2.2. Sau khi install Homebrew. Thực hiện tiếp câu lệnh bên dứoi để install Ruby

Mã:
brew install rbenv ruby-build

Cấu hình Git
Chúng ta sẽ sử dụng Git để làm môi trường quản lí mã nguồn, vì thế bạn cần có một tài khoản Github, nếu chưa có thì đăng kí tại đây.

Sau khi có account trên Git, các bạn thay với các thông số trong bên dưới và gõ lần lượt vào Ternimal nhé

Mã:
git config --global color.ui true
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR@EMAIL.com"
ssh-keygen -t rsa -C "YOUR@EMAIL.com"

Kế tiếp, chúng ta cần tạo ra một key SSH để add vào tài khoản Git, còn tạo SSH key để làm gì thì mình sẽ nói sau hoặc tự tìm hiểu trên internet vậy. Sau khi thực hiện câu lệnh bên dưới, copy SSH key và truy cập tại đây để dán nó vào.

Mã:
cat ~/.ssh/id_rsa.pub

Kiểm tra lại kết quả đã cấu hình Git bằng câu lệnh:
Mã:
ssh -T git@github.com

Nếu ko có vấn đề thì kế quả sẽ như sau:
Mã:
Hi nmkhoi! You've successfully authenticated, but GitHub does not provide shell access.

Cài đặt Rails
Trong bài demo này mình cài Rails phiên bản 4.2.1. Tiếp tục sử dụng Ternimal và gõ câu lệnh sau:
Mã:
gem install rails -v 4.2.1

Rails bây giờ đã được cài đặt thành công, nhưng để sử dụng được câu lệnh thực thi rails thì ta cần câu lệnh sau:
Mã:
rbenv rehash

Kiểm tra lại nếu đúng thì kết quả như sau:
Mã:
rails -v
# Rails 4.2.1

Cài đặt cơ sở dữ liệu dùng cho Rails
Thường thì mặc định Rails nó dùng sqlite3 làm cơ sở dữ liệu. Nhưng chẳng ai muốn dùng đâu, vì nó sẽ lưu trữ trên ổ đĩa của máy. Chúng ta hướng tới là một quản trị CSDL như MySQL, PostgreSQL để thực hiện việc này.

Mình sẽ hướng dẫn cấu hình và cài đặt với MySQL còn cái kia mình ko dùng nên ko biết:

MySQL

Cài đặt MySQL từ Homebrew, tiếp tục gõ vào Ternimal:
Mã:
brew install mysql

Sau khi mọi việc kết thúc, ta sẽ nhận được 2 câu lệnh hướng dẫn như sau:
Mã:
# To have launchd start mysql at login:
ln -sfv /usr/local/opt/mysql/*plist ~/Library/LaunchAgents

# Then to load mysql now:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Lưu ý: mặc định mysql không sử dụng password cho tài khoản root.

Kiểm tra kết quả
Thử mở Ternimal vào tạo một ứng dụng test:
Mã:
rails new myapp

#### If you want to use MySQL
rails new myapp -d mysql

#### If you want to use Postgres
# Note you will need to change config/database.yml's username to be
# the same as your OSX user account. (for example, mine is 'chris')
rails new myapp -d postgresql

# Move into the application directory
cd myapp

# If you setup MySQL or Postgres with a username/password, modify the
# config/database.yml file to contain the username/password that you specified

# Create the database
rake db:create

rails server
Kết quả sẽ hiển thị khi bạn vào trình duyệt truy cập địa chỉ: http://localhost:3000