Yuto Blog

Yuto Blog

Tag: Rails
48 articles
Phân biệt các phương thức xuất p / print / puts trong Ruby

Phân biệt các phương thức xuất p / print / puts trong Ruby

Trong Ruby có 3 phương thức xuất ký tự ra màn hình hay được dùng nhất đó là p, print và puts. Về sự khác nhau giữa 3 phương thức này thì được tóm gọn như sau: | Phương thức | Xuống dòng ở cuối | Phương thức cấu thành | Khi bên trong có dấu \ | | --- | --- | --- | --- | | p | Có | inspect | Xuất ra y vậy | | print | Không | tos | Xuất ra kết quả | | puts | Có | tos | Xuất ra kết quả | Ví dụ khi sử dụng phương thức p ```ruby p "a\nb" => "a\nb" p 'a\nb' => "a\nb' ``` Phương thức p thường được...
Created by Yuto at 2021-06-04 09:46
Từ khóa trong ngôn ngữ lập trình Ruby

Từ khóa trong ngôn ngữ lập trình Ruby

Dưới đây là danh sách các từ khóa (reserved word) trong ngôn ngữ lập trình Ruby. Từ khóa không thể được dùng để đặt tên biến...v..v.. nil true false not or and BEGIN END begin end do then yield rescue ensure class module def defined? alias undef super self return white until for in break next redo retry case when if unless else elsif __LINE__ __FILE__ __ENCODING__
Created by Yuto at 2021-05-28 09:51
【 Ruby on Rails】Hướng dẫn sử dụng ActiveStorage để upload hình ảnh

【 Ruby on Rails】Hướng dẫn sử dụng ActiveStorage để upload hình ảnh

Cài đặt ActiveStoragerails active_storage:installrake db:migrate Gemfilegem "image_processing" app/models/article.rbhas_one_attached :image app/controllers/articles_controller.rbdef article_params params.require(:article).permit(:image) end app/views/articles/_form.html.slim= f.label :image = f.file_field :image, accept: "image/png, image/jpg, image/jpeg, image/gif" app/views/articles/show.html.slim- if @article.image.attached? = image_tag @article.image.variant(resize: "640x480^",...
Updated by Yuto at 2021-01-17 03:20

Dùng foreman để khởi động Ruby on Rails application với nhiều process

Foreman là gì Foreman là một tool dùng để quản lý nhiều process cùng chạy của một Rails application, các process đọc từ file có tên là Procfile, mình nghĩ Proc ở đây là viết tắt của process 😆 Cài đặt Cài đặt gem foreman gem install foreman Hoặc bỏ vào Gemfile của Rails application ruby:Gemfile group :development do gem 'foreman' ... end Cách sử dụng Trong terminal gõ foreman -h sẽ hiển thị ra danh sách các lệnh, options ``` Commands: foreman check # Validate your...
Updated by Yuto at 2021-01-16 17:55

Dùng slim làm template engine cho trang web Ruby on Rails

Thông thường khi mới làm quen với Rails thì chúng ta vẫn dùng template engine mặc định là *.html.erb để viết. Hôm nay mình giới thiệu cho những bạn nào chưa biết về slim template engine, dùng slim để viết trang web sẽ tiết kiệm thời gian, và việc viết code cũng trở nên thoải mái hơn phần nào. Đây là trang web để các bạn tìm hiểu về SLIM: http://slim-lang.com (http://slim-lang.com) Mình sẽ so sánh hai đoạn code, được viết bằng ERB thông thường và SLIM như sau: :*.html.erb <table> <%...
Created by Yuto at 2021-01-12 19:16
【Ruby on Rails】Sử dụng tùy chọn shallow trong file routes

【Ruby on Rails】Sử dụng tùy chọn shallow trong file routes

Khi sử dụng nest resources, khai báo tùy chọn shallow trong routes sẽ làm các URL ngắn gọn dễ nhìn hơn. Giả sử một application có model Category, mỗi Category bao gồm nhiều Article. Trong trường hợp này thì thường khai báo resources là: ruby resources :categories do resources :articles end Lúc này URL để tạo Article mới sẽ là /categories/:category_id/articles/new Tuy nhiên nếu như vậy, thì sau khi tạo Article xong và vào action #show của Article này, thì URL sẽ trở thành...
Updated by Yuto at 2020-12-14 02:31
【 Ruby on Rails】Hướng dẫn sử dụng ActionText

【 Ruby on Rails】Hướng dẫn sử dụng ActionText

Cài đặt ActionTextrails action_text:installrake db:migrate Không cần phải có column "content" trong table articlesapp/models/article.rbhas_rich_text :content validates :content, presence: true, length: { minimum: 5 } app/controllers/articles_controller.rbdef article_params params.require(:article).permit(:content) end app/views/articles/_form.html.slim= f.label :content = f.rich_text_area :content app/views/articles/show.html.slim== @article.contentCustomize...
Updated by Yuto at 2020-08-15 01:06
【Ruby on Rails】Một số gem hữu ích

【Ruby on Rails】Một số gem hữu ích

Đây là một số gem mình thường dùng, rất hữu ích và tiện lợiKiểm tra code rubocopPhân tích và hỗ trợ format lại code rubocop-rails_configCấu hình rubocop cho dự án Ruby on Rails rails_best_practicesKiểm tra chất lượng code bulletKiểm tra N+1 query Xác thực &amp; Phân quyềndeviseHộ trợ xác thực người dùng cancancanĐịnh nghĩa và kiểm tra phân quyền Front-endfont-awesome-sassHỗ trợ sử dụng Font Awesome icon rails_sortableDễ dàng sắp xếp thứ tự bằng việc drag &amp; drop gritterTạo các flash...
Updated by Yuto at 2020-06-25 01:58