Rails ships Thor support for gems and engines via a lib/commands directory, but Rails applications themselves don't support it out of the box because Rails doesn't add lib to the Ruby load path until after the app loads, which happens after command lookup. A workaround patches config/boot.rb to manually add lib to the load path early, enabling custom Thor commands like bin/rails foobar. The author also opened two upstream Rails PRs: one to make lib/commands work without the boot.rb patch by retrying command lookup after the app loads, and another addressing a separate bug where Rails only loads the first matching command file found in the load path, which can silently shadow built-in commands like generate if a gem defines a conflicting path earlier.
Vì sao nên đọc: Bài viết này hướng dẫn bạn thêm lệnh Thor tùy chỉnh vào ứng dụng Rails bằng cách patch config/boot.rb, đồng thời giải quyết vấn đề đổ bóng lệnh có sẵn và đề xuất cải tiến cho Rails.
Nguồn: https://island94.org/2026/10/adding-custom-thor-commands-to-your-rails-app. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đang tải bình luận…
Scrap4rb là một gem Ruby nhỏ giúp phát hiện các bài test Minitest trong dự án của bạn có vấn đề về chất lượng. Công cụ này chỉ ra các test quá dài (long), kiểm tra quá ít (check too little), hoặc sử dụng quá nhiều mock/fake (fake too much). Nó cung cấp phân tích trực quan giúp lập trình viên nhận diện điểm yếu trong bộ test, đặc biệt hữu ích với các dự án có hàng trăm test case. Bằng cách sử dụng Scrap4rb, team có thể cải thiện độ bền và độ tin cậy của bộ test mà không cần đọc thủ công từng file test.
gem scrap4rb giúp lập trình viên Ruby nhanh chóng nhận diện và cải thiện các bài kiểm tra Minitest chất lượng thấp.
Ruby 3.4.11 vừa được phát hành như một bản cập nhật định kỳ nhằm sửa lỗi. Bản cập nhật này tập trung vào các bugfix để cải thiện độ ổn định cho ngôn ngữ Ruby. Phiên bản này không chứa các tính năng mới mà chỉ tập trung vào sửa các vấn đề đã được báo cáo. Với lập trình viên Ruby, việc cập nhật lên phiên bản này là cần thiết để tránh các potential issue có thể ảnh hưởng đến ứng dụng.
Ruby 3.4.11 mang những sửa lỗi quan trọng mà lập trình viên Ruby cần biết để đảm bảo tính ổn định cho ứng dụng.
Ruby 4.0.7 vừa được phát hành sau Ruby 4.0.6, đây là bản patch sửa lỗi bảo mật quan trọng. Bản cập nhật này tập trung vào các vấn đề liên quan đến bộ xử lý JSON và Yaml trong Ruby standard library. Một lỗi nghiêm trọng trong module CSV đã được vá để ngăn chặn tấn công injection. Nếu bạn đang sử dụng các phiên bản cũ hơn, nên nâng cấp ngay lập tức để đảm bảo bảo mật hệ thống.
Ruby 4.0.7 mang đến những cải tiến hiệu năng và sửa lỗi quan trọng mà lập trình viên Ruby cần biết.
Bối cảnh: Khi phát triển ứng dụng Rails, việc tái sử dụng giao diện thường gặp khó khăn do view phức tạp và lặp lại code. Nguyên nhân kỹ thuật: Bài viết giới thiệu một thư viện thành phần cho Rails 8 được xây dựng trên ViewComponent để tách biệt logic và markup, kết hợp TailwindCSS 4.0 để cung cấp lớp utility-first và Stimulus để xử lý hành vi JavaScript mà không cần viết nhiều mã tùy chỉnh. Hệ quả: Các thành phần này có thể được import trực tiếp vào view, giúp giảm lượng ERB/HTML trùng lặp, tăng tốc độ xây dựng UI và đảm bảo sự nhất quán thiết kế nhờ các lớp Tailwind được định nghĩa sẵn. Điều đáng học: Kết hợp ViewComponent với TailwindCSS và Stimulus cho thấy cách tận dụng công cụ frontend hiện đại bên trong ecosystem Rails mà không sacrificing sự đơn giản của convention-over-configuration, từ đó mở rộng khả năng tùy chỉnh mà vẫn giữ code sạch và dễ bảo trì.
Tìm hiểu cách xây dựng thư viện component Rails 8 hiện đại với ViewComponent, TailwindCSS 4.0 và Stimulus để tối ưu hóa giao diện người dùng.
Khi chuyển sang PostgreSQL 18.4 và áp dụng UUID v7 làm primary key thay vì các phiên bản trước, họ nhận được lợi nhuận về tốc độ ghi. Thay đổi cột mặc định thực hiện qua lệnh ALTER TABLE, nhưng yêu cầu khóa exclusiv, làm chặn cả các truy vấn SELECT, do đó họ áp dụng timeout ngắn và nhiều lần retry. Kết quả là tốc độ thực thi của một câu INSERT đa dòng, được gọi 12000 lần mỗi phút trên một bảng có hàng tỷ bản ghi, giảm trung bình 23 lần. Điều này cho thấy việc lựa chọn UUID v7 có thể cải thiện hiệu năng insert đáng kể, nhưng cần quản lý cách khóa và thời gian timeout để tránh gián đoạn dịch vụ. Vì vậy, nếu bạn đang cân nhắc sử dụng UUID cho khóa chính, nên thử UUID v7 và chuẩn bị kế hoạch giảm thiểu thời gian khóa exclusiv.
Sử dụng UUID v7 trong PostgreSQL 18 giúp tăng tốc độ insert lên đến 23 lần, cải thiện hiệu năng đáng kể cho các bảng có lượng dữ liệu lớn.
Cộng đồng Ruby Users Forum hiện có 456 thành viên và tiếp tục phát triển mạnh mẽ. Forum chào đón 2 nhà tài trợ mới là @antresxx và @..., cho thấy sự quan tâm ngày càng tăng đối với ngôn ngữ Ruby. Môi trường này tạo điều kiện lập trình viên trao đổi và giải quyết vấn đề kỹ thuật hiệu quả. Việc tham gia diễn đàn giúp cập nhật xu hướng mới và kết nối với cộng đồng Ruby toàn cầu.
Bài viết này cung cấp tổng quan hàng tháng về cộng đồng Ruby Users Forum với số thành viên và người ủng hộ mới.
Tháng Bảy, các ứng dụng Rails và backend ổn định (calm backends) lại được đánh giá cao về mặt văn hóa, trong khi những "Fashion Stacks" phải trả tiền cho chế độ trực (on-call) dù không thực sự cần thiết.
Lập trình viên nên đọc bài này để hiểu cách các stack truyền thống (như Ruby on Rails) vẫn chiếm ưu thế trong các công việc đòi hỏi sự ổn định và hiệu suất cao, trong khi các stack "trang trí" (mới) chỉ được ưu tiên khi cần giải quyết vấn đề cấp bách ngay lập tức.
Basecamp 5 gặp vấn đề về hàng chờ request sau khi triển khai. Nguyên nhân kỹ thuật là các signed-in request phải xử lý qua Rails app trong Puma master trước khi fork worker. Giải pháp này giúp giảm 80% hàng chờ request bằng cách xử lý một số request ngay trong master process trước khi tạo worker. Hệ quả là trải nghiệm người dùng cải thiện đáng kể sau deployment với thời gian phản hồi giảm mạnh. Điều đáng học là việc tối ưu xử lý request ngay ở master process có thể giải quyết hiệu quả tình trạng quá tải mà không cần tăng số lượng worker.
Bài viết này giúp lập trình viên giảm đáng kể hàng đợi yêu cầu sau triển khai bằng cách chạy yêu cầu đã đăng nhập qua ứng dụng Rails trong tiến trình Puma master trước khi tạo tiến trình worker.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000+ bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thử