2011-12-09 40 views
8

Tôi tò mò cách tốt nhất để trả lời yêu cầu ajax là nó gửi json, và sau đó phân tích nó ở phía khách hàng (ví dụ với pure) hoặc tôi nên hiển thị javascript ở phía máy chủ và trả về kết quả (với mẫu js.erb)?Ruby on Rails, json vs js ajax phản ứng

Trả lời

7

Sử dụng mẫu js.erb có xu hướng đơn giản hơn và khuyến khích bạn giữ logic ứng dụng trong bộ điều khiển Rails của mình. Đối với các ứng dụng truyền thống, trong đó ít hoặc không có logic ứng dụng nào được xử lý trong javascript, điều này có thể là một điều tốt.

Mặt khác, sử dụng JSON khuyến khích bạn phát triển ứng dụng Rails của bạn nhiều hơn như một máy chủ API cho một ứng dụng khách javascript nặng. Nếu bạn đang muốn thực hiện các hành động CRUD cốt lõi của mình qua ajax và hiếm khi tải lại trang, điều này có thể phù hợp hơn với kiểu ứng dụng của bạn.

Điều tốt nhất trong một tình huống cụ thể phụ thuộc vào cả loại ứng dụng bạn đang tìm cách xây dựng và các thuộc tính của yêu cầu cụ thể.

+0

+1 cho phản hồi JSON với bộ điều khiển dưới dạng API cho chế độ xem. Làm theo cách này tách rời logic xem (thao tác DOM) khỏi mã điều khiển. – Nick