2010-10-24 20 views
13

Tôi đang sử dụng thẻ biểu mẫu sau cho @jobs có job_photos được bao gồm.Có thể trong Rails3, để có một biểu mẫu nhiều => true & use remote => true

<% form_for @jobs, :html => { :multipart => true }, :remote => true do |f| %> 

Các hình thức hoạt động tốt không xa, nhưng nếu tôi thêm điều khiển từ xa => đúng, hình thức nộp, trả create.js nhưng không lưu lại bất cứ điều gì để DB hoặc sai sót?

Trả lời

15

Điều này là bạn không thể đăng biểu mẫu nhiều phần thông qua AJAX. Đây không phải là giới hạn của một đường ray. Để phá vỡ điều này, bạn cần sử dụng kỹ thuật iframe (có thể dễ dàng hơn với plugin responds_to_parent) hoặc sử dụng công nghệ như Flash hoặc Silverlight.

+8

Lý do tại sao AJAX và tải lên tệp không vần điệu là Javascript không có quyền truy cập vào hệ thống tệp của bạn và do đó không thể tạo yêu cầu từ tệp. Trong một biểu mẫu nhiều phần, trình duyệt có quyền truy cập vào hệ thống tệp của bạn và do đó có thể thực hiện yêu cầu POST chứa tệp. – Grav

+1

Thật là tệ. Tôi muốn làm điều đó. Tôi cảm thấy như tôi lãng phí trong 3 giờ qua bằng văn bản này để nhận ra nó sẽ không hoạt động: p – nzifnab

+0

Làm kiểm tra đá quý remotipart như trong câu trả lời của Musaffa. Làm việc như một sự quyến rũ, và là một bổ sung hai dòng. – theIntuitionist

8

Bạn có thể sử dụng đá quý Remotipart để tải lên tệp với remote =>true.

+1

đá quý này! – okliv

Các vấn đề liên quan