Ruby on Rails

Form Rails

form_with, model forms, form_for legacy, strong parameters, nested attributes, file uploads

20 câu hỏi phỏng vấn·
Mid-Level
1

Form helper nào được khuyến nghị trong Rails 5.1+ để tạo form?

Câu trả lời

form_with là helper hợp nhất được giới thiệu trong Rails 5.1, thay thế form_for và form_tag. Theo mặc định nó tạo các form với remote: true (yêu cầu AJAX) và đơn giản hóa cú pháp bằng cách tự động phát hiện xem có truyền vào một đối tượng model hay không. Sự hợp nhất này giảm bớt nhầm lẫn giữa hai helper cũ và cung cấp một API nhất quán hơn.

2

Sự khác biệt giữa form_with model: @user và form_with url: users_path là gì?

Câu trả lời

Với model: @user, Rails tự động xác định URL và phương thức HTTP dựa trên trạng thái của đối tượng (new_record? hoặc persisted?). Đối với một bản ghi mới, nó dùng POST tới users_path, với bản ghi đã tồn tại thì PATCH tới user_path(@user). Với url: users_path, phải chỉ định thủ công URL và phương thức HTTP phù hợp.

3

Làm thế nào để vô hiệu hóa các lần gửi AJAX mặc định của form_with để có được một lần gửi HTML cổ điển?

Câu trả lời

Theo mặc định, form_with tạo các form với data-remote='true' gửi các yêu cầu AJAX. Để có được một lần gửi HTML truyền thống với việc tải lại trang, phải thêm local: true. Bắt đầu từ Rails 6.1, hành vi mặc định có thể được cấu hình toàn cục thông qua config.action_view.form_with_generates_remote_forms.

4

Vai trò của strong parameters trong bối cảnh các form Rails là gì?

5

Làm thế nào để định nghĩa đúng một phương thức strong parameters cho model Article với title và content?

+17 câu hỏi phỏng vấn

Nắm vững Ruby on Rails cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí