gia o tri nh ruby on rails 3255

8
Giáo Trình Ruby on Rails Tài Liệu Training (C) 2010 Công Ty TNHH TM - DV Tin Học Giải Pháp Nhanh

Upload: nguyen-an

Post on 08-Apr-2015

392 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Gia o Tri Nh Ruby on Rails 3255

Gia ́o Trình Ruby on Rails

Tài Liệu Training(C) 2010 Công Ty TNHH TM - DV

Tin Học Giải Pháp Nhanh

Page 2: Gia o Tri Nh Ruby on Rails 3255

Ruby on Rails- www.RubyOnRails.org- Web framework, tương tự như Zend, nhưng "full stack", hoàn chỉnh từ lớp presentation tới logging.

- Full stack: MVC framework.

ActiveRecord để truy cập DatabaseKhuyến khích Testing (test-driven development, hay TDD)

Unit-testFunctional test (test controller)Integration test (test nhiều controller)

Server dạng application server chứ không phải như Apache/PHP

Page 3: Gia o Tri Nh Ruby on Rails 3255

Tại Sao Cần Biết Ruby on Rails?

- Ruby Là một ngôn ngữ "thời thượng", dễ học và dễ viết (nhưng khó master!)- So sánh với các ngôn ngữ và framework khác, Ruby on Rails như xe đua so với xe đạp.

- Nhu cầu consulting ở Mỹ đang rất phát triển. Hướng chiến lược của Giải Pháp Nhanh cần được định hướng để nắm bắt nhu cầu này.

Page 4: Gia o Tri Nh Ruby on Rails 3255

Chương Trình Training Ruby on Rails1. Làm quen với Framework

1. Install: www.rubyonrails.org/download2. Editor (Windows)

1. www.e-texteditor.comText Editor, tương tự như Textmatte, có hỗ trợ Bundle (một dạng auto-complete). Cty có bản quyền chương trình này

2. www.radrails.org RadRails. Dựa trên nền Eclipse, có debugger.

3. Netbeans, tương tự như RadRails3. Môi Trường:

1. Rails có thể chạy trên Windows như bình thường, mặc dù môi trường chuẩn là Mac OS X

2. Cần install SVN và GitGui để hỗ trợ việc check in/out code. http://code.google.com/p/msysgit/

Page 5: Gia o Tri Nh Ruby on Rails 3255

Chương Trình Training Ruby on Rails

2. Tài liệu

http://guides.rubyonrails.org/Đây là giáo trình chuẩn để học Rails. Sau khi học xong chapter "Getting Start" là có thể bắt đầu quen Rails và làm đượchttp://guides.rubyonrails.org/getting_started.html Sách

Agile Web Development with Rails (có bản PDF trên server)

Page 6: Gia o Tri Nh Ruby on Rails 3255

Ba ̀i Tập #1

Xây dựng một hệ thống blog với các tính năng:

1. Cho user đăng nhập vào2. Đăng một Post với Title và Description.3. Cho anonymous user (bất kể người dùng nào) post

comment.

Mục đích của bài tập

1. Làm quen với việc install Rails và các plugins cần thiết2. Làm quen với framework MVC3. Làm quen với Migrations, cách truy vấn database, và xử lý

formChú ý: khi viết tránh để bị XSS hay SQL injection!

Page 7: Gia o Tri Nh Ruby on Rails 3255

Ca ́c Plugins cần thiết của RailsĐây là danh sách các plugins cần thiết mà một lập trình viên Rails cần biết:

1. will_paginate: phân tranghttp://github.com/mislav/will_paginate

2. restful-authenticate: hỗ trợ việc đăng ký userhttp://github.com/technoweenie/restful-authentication

3. attachment_fu: hỗ trợ upload fileshttp://github.com/technoweenie/attachment_fu

4. paperclip: tương tự như attachment_fu, dùng hỗ trợ uploadhttp://github.com/thoughtbot/paperclip

5. rmagick: dùng để xử lý hình ảnh, kết hợp với attachment_fuhttp://rubyforge.org/projects/rmagick

6. capistrano: thành phần cực kỳ quan trọng, để hỗ trợ deploymenthttp://www.capify.org

Page 8: Gia o Tri Nh Ruby on Rails 3255

Ba ̀i Tập #2

Xây dựng một Online Gallery với các tính năng1. Đăng ký user và Login dùng restful_authenticate2. Cho user upload tạo category, dùng acts_as_category3. Cho phép user upload hình vào một category

1. Hình upload được tự động resize lại dùng rMagick2. Hình upload được tự động tạo thumbnail

4. Danh sách hình trong một category cần được phân trang dùng will_paginate1. nâng cao: paginate load trang dùng Ajax (will_paginate có hỗ trợ Ajax

Renderer)5. Viết Unit Test cho các Models trong application.

Mục tiêu:1. Làm quen với các Plugins của Rails2. Làm quen với upload hình và xử lý hình được upload3. Tận dụng các tính năng trong chữ "V" (view) của Rails để tránh lập lại

code: partials, form helpers, v.v.