Tôi có một mẫu email. Nhưng tôi đang tạo một mẫu email thử nghiệm nơi người dùng có thể thêm một email duy nhất và thử nghiệm email gửi email đó đến email cụ thể đó.Làm thế nào để vượt qua các jars AJAX từ jQuery tới bộ điều khiển của chúng?
Để dễ dàng, tôi quyết định thực hiện email kiểm tra qua ajax và dán toàn bộ nội dung bên trong biểu mẫu email khác.
tôi không thể tìm ra cách để gửi các biến từ HAML của tôi để điều khiển của tôi
new.html.haml
- form_tag admin_email_blast_path do
Subject
%br
= text_field_tag 'subject', :class => "mass_email_subject"
%br
Body
%br
= text_area_tag 'message', '', :name => 'editor1', :class => "mass_email_body"
%br/
= submit_tag 'Send Email', :class => 'button'
.grid_3.right.align_right.suffix_1 # <= TEST EMAIL :D
= text_field_tag 'email', nil, :style => "width: 150px;", :class => "test_email_address"
= link_to 'Test Email', test_email_admin_email_blast_path, :class => 'button test_email'
JS
$(".test_email").live("click", function() {
var email = $(".test_email_address")
var subject = $(".mass_email_subject");
var body = $(".mass_email_body");
data = "email=" + email.val() + "&subject" + subject.val() + "&body" + body.val();
$.ajax({type: "GET",
url: $(this).attr("href"),
dataType: "script"
data: data
});
return false;
});
Bộ điều khiển
def test_email
debugger
email = params[:email]
subject = params[:subject]
body = params[:body]
Notifier.deliver_email_blast(email, subject, body)
end
routes.rb
admin.resource :email_blast, :member => {
:test_email => :get
}
Tôi xin lỗi trước thời hạn nếu điều này là một câu hỏi newbie câm. :(
Test_email_admin_email_blast_path có chấp nhận yêu cầu GET không? (Hãy thử "các tuyến đường rake | grep test_email_admin_email_blast" để xem cách Rails diễn giải các tuyến đường của bạn.rb) – tobym
Có. test_email_admin_email_blast GET /admin/email_blast/test_email(.:format) {: controller => "admin/email_blasts",: action => "test_email"} – Trip