MU Vô Song
  • Trang chủ
  • Tổng hợp
    • Free fire
    • Liên minh huyền thoại
    • Liên minh tốc chiến
    • Liên quân mobile
    • Mu Mobile
    • Mu PC Việt Nam
    • Pubg mobile
    • Pubg PC
  • Điều khoản sử dụng
  • Liên hệ
  • Hướng Dẫn
No Result
View All Result
MU Vô Song
  • Trang chủ
  • Tổng hợp
    • Free fire
    • Liên minh huyền thoại
    • Liên minh tốc chiến
    • Liên quân mobile
    • Mu Mobile
    • Mu PC Việt Nam
    • Pubg mobile
    • Pubg PC
  • Điều khoản sử dụng
  • Liên hệ
  • Hướng Dẫn
No Result
View All Result
MU Vô Song
No Result
View All Result
Home Hướng Dẫn

Series Hướng Dẫn Lập Trình Ruby on Rails (Phần 3)

admin by admin
27/09/2022
in Hướng Dẫn
0

Hôm nay mình sẽ tiếp tục với Series hướng dẫn lập trình Ruby on Rails phần 3, ở phần này mình sẽ hướng dẫn các bạn luồng hoạt động của Rails Framework thông qua một ứng dụng login đơn giản.

Rails là một framwork được xây dựng dựa trên mô hình MVC, đầu tiên mình sẽ giới thiệu để các bạn nắm được mô hình MVC trong Rails như thế nào để các bạn có cái nhìn tổng quan luồng hoạt động của Rails Framwork.

1. Mô hình MVC trong Rails Framework

😃

p=. ~Mô hình MVC trong Rails Framwork~

Mô hình MVC trong Rails được phân thành ba phần chính là Model – View – Controller rất rõ ràng.

Như các bạn đã thấy ở mô hình trình Rails kết nối với Database thông qua một lớp trung gian gọi là ActiveRecord, lớp này sẽ chịu trách nhiệm kết nối Rails với Database để đảm bảo Rails có thể hoạt động một cách độc lập với các hệ quản trị CSDL bên dưới.

ActiveRecord đóng vai trò là M trong mô hình MVC. Tấc cả các Model được tạo ra từ lệnh rails g model <model name> đều được kết thừa từ lớp này, nó đóng vai trò xử lý các nghiệp vụ và logic, kết nối Database.

ActionView đóng vai trò là V trong mô hình MVC. Các view trong Rails được viết bằng cách nhúng các đoạn mã Ruby trong các thẻ lẫn với thẻ HTML. Rails hỗ trợ các ActionView::Helper để lập trình viên có thể dễ dàng hiển thị dữ liệu từ Model đến người dùng

Một số Helper hỗ trợ trong việc tạo form dữ liệu :

form_tag(‘/posts’) # => <form action=”/posts” method=”post”> form_tag(‘/posts/1’, method: :put) # => <form action=”/posts/1″ method=”post”> … <input name=”_method” type=”hidden” value=”put” /> … text_field_tag ‘name’ # => <input id=”name” name=”name” type=”text” /> text_field_tag ‘query’, ‘Enter your search query here’ # => <input id=”query” name=”query” type=”text” value=”Enter your search query here” /> button_tag # => <button name=”button” type=”submit”>Button</button> button_tag(type: ‘button’) do content_tag(:strong, ‘Ask me!’) end # => <button name=”button” type=”button”> # <strong>Ask me!</strong> # </button>

Các bạn có thể tìm hiểu thêm về ActionView::Helper::FormTagHelper ở đây FormTagHelper

Các file view thường có phần mở rộng là .erb Embedded Ruby. Những file này sẽ được biên dịch và trả về nội dung HTML thuần trước khi được đưa xuống Browser để hiển thị.

ERB structure và syntask :

<%= EXPRESSION %> — Inserts the value of an expression.

Username : <%= @user.name %>

Genre : <%= @user.genre %>

<% CODE %> — Executes code, but does not insert a value.

<% if @user.genre == “male” %>

He is….

<% elsif @user.genre == “femal” %>

She is….

<% end %>

<%# COMMENT %> — Removed from the final output.

<%# this is comment %>

ActionController đóng vai trò là C trong MVC. Đặt biệt trong Rails chỉ có application_controller.rb mới kế thừa từ lớp này, còn tất cả các Controller khác đều kế thừa lại từ application_controller.rb. Sau khi đã xác định được request các Controller có nhiệm vụ trả về view phù hợp cho người dùng.

Sau khi đã có cái nhìn tổng quan về mô hình MVC trong Rails, bây giờ chúng ta sẽ bắt đầu tạo một project login_app với Rails để hiểu hơn nhé

2. Tạo ứng dụng login_app đơn giản với Rails

Đầu tiên ta sẽ tạo một project Rails có tên là login_app

rails new login_app

Ta sẽ sử dụng MySQL để lưu Database, add thêm vào gemfile

gem ‘mysql2’, ‘~> 0.4.4’

Ta sẽ có gemfile

source ‘https://rubygems.org’ gem ‘rails’, ‘~> 5.0.0’, ‘>= 5.0.0.1’ gem ‘puma’, ‘~> 3.0’ gem ‘sass-rails’, ‘~> 5.0’ gem ‘uglifier’, ‘>= 1.3.0’ gem ‘coffee-rails’, ‘~> 4.2’ gem ‘jquery-rails’ gem ‘turbolinks’, ‘~> 5’ gem ‘jbuilder’, ‘~> 2.5’ gem ‘mysql2’, ‘~> 0.4.4’ group :development, :test do gem ‘byebug’, platform: :mri end group :development do gem ‘web-console’ gem ‘listen’, ‘~> 3.0.5’ gem ‘spring’ gem ‘spring-watcher-listen’, ‘~> 2.0.0’ end gem ‘tzinfo-data’, platforms: [:mingw, :mswin, :x64_mingw, :jruby]

chạy lệnh dưới để cập nhật gemfile

bundle install

Tiếp theo ta sẽ cấu hình cho file database.yml để ứng dụng Rails của ta có thể kết nối với MySQL

default: &default adapter: mysql2 encoding: utf8 pool: 5 username: root password: *your_password* socket: /var/run/mysqld/mysqld.sock development: <<: *default database: login_app_development test: <<: *default database: login_app_test production: <<: *default database: login_app_production username: login_app password: <%= ENV[‘LOGIN_APP_DATABASE_PASSWORD’] %>

Như vậy là ứng dụng của bạn đã kết nối được với MySQL, nào chúng ta cùng chạy chạy thử nhé

rails s

Lúc này khi truy cập vào “http://localhost:3000/” sẽ bị báo lỗi

ActiveRecord::NoDatabaseError Unknown database ‘login_app_development’

nguyên nhân là do ta chưa tạo database trong MySQL, để làm việc này ta thực thi

minhduc@minhduc-K42F:~/login_app$ rake db:create Created database ‘login_app_development’ Created database ‘login_app_test’ minhduc@minhduc-K42F:~/login_app$

Chạy lại server và truy cập vào “http://localhost:3000/” sẽ thành công. Như vậy là mình đã hướng dẫn các bạn khá rõ về mô hình MVC trong Rails, và chúng ta đã có một project login_app được cấu hình sẵn, lần tới chúng ta sẽ tiếp tục phát triển các chức năng cho project này.

Cám ơn các bạn đã theo dõi và hẹn gặp các bạn trong kì tới

Previous Post

Cách lái xe số tự động A – Z & kinh nghiệm lái xe ô tô tự động an toàn

Next Post

Một số điểm mới trong Hướng dẫn số 01-HĐ/TW về một số vấn đề

admin

admin

Next Post

Một số điểm mới trong Hướng dẫn số 01-HĐ/TW về một số vấn đề

ADVERTISEMENT
Plugin Install : Widget Tab Post needs JNews - View Counter to be installed
  • Trending
  • Comments
  • Latest

Top 5 ứng dụng, phần mềm tạo sóng nhạc miễn phí trên PC, điện

17/01/2023

Nguồn Gốc & Ý Nghĩa Chiếc Nón Lá Việt Nam – Hải Triều

17/01/2023

Hướng dẫn Final Fantasy VII Remake: Cách lấy 9 trang phục ẩn

17/01/2023

Rèn luyện kỹ năng đọc diễn cảm cho sinh viên sư phạm mầm non

17/01/2023

Recommended

Top 5 ứng dụng, phần mềm tạo sóng nhạc miễn phí trên PC, điện

17/01/2023

Nguồn Gốc & Ý Nghĩa Chiếc Nón Lá Việt Nam – Hải Triều

17/01/2023

Hướng dẫn Final Fantasy VII Remake: Cách lấy 9 trang phục ẩn

17/01/2023

Rèn luyện kỹ năng đọc diễn cảm cho sinh viên sư phạm mầm non

17/01/2023

Thông tin

Trang web chia sẻ thông tin game, kinh nghiệm chơi MU online - Muvossong.vn

Chuyên Mục

  • Free fire
  • Hướng Dẫn
  • Liên minh huyền thoại
  • Liên minh tốc chiến
  • Liên quân mobile
  • Mu Mobile
  • Mu PC Việt Nam
  • Pubg mobile
  • Pubg PC

Liên kết

Vay tiền nhanh
No Result
View All Result
  • Chính sách bảo mật
  • Chính sách riêng tư
  • Điều khoản sử dụng
  • Liên hệ
  • Trang chủ MU Vô Song

© 2021 MUVOSONG.VN