【发布时间】:2014-12-20 01:03:15
【问题描述】:
我有下面的表格,它工作得很好,但是提交时:event 字段在邮件中返回一个 ID,有什么想法可以防止这种情况发生吗?
表格
<%= simple_form_for @sponsorship_inquiry, :method => :post do |f| %>
<%= f.input :spam, as: :hidden %>
<%= f.input :name %>
<%= f.input :phone %>
<%= f.input :email %>
<%= f.input :job_title %>
<%= f.input :company %>
<%= f.input :event, :collection => Event.where(:end_date.gt => Date.today, :is_live => 'true') %>
<%= f.input :message, as: :text, :input_html => { :cols => 5, :rows => 6 } %>
<%= f.button :submit %>
<% end %>
邮递员
Name: <%= @sponsorship_inquiry.name %>
Phone: <%= @sponsorship_inquiry.name %>
E-Mail: <%= @sponsorship_inquiry.email %>
Job Title: <%= @sponsorship_inquiry.job_title %>
Company: <%= @sponsorship_inquiry.company %>
Event: <%= @sponsorship_inquiry.event %>
Message: <%= @sponsorship_inquiry.message %>
控制器
def new
@sponsorship_inquiry = SponsorshipInquiry.new
end
def create
# Hidden field for bots/spiders
redirect_to new_inquiry_path and return if params[:spam].present?
@sponsorship_inquiry = SponsorshipInquiry.new(params[:sponsorship_inquiry])
if @sponsorship_inquiry.valid?
SponsorshipInquiryMailer.admin(@sponsorship_inquiry).deliver
redirect_to sponsorship_inquiries_path
else
render :new
end
end
【问题讨论】:
-
sponsorship_inquiry和event是如何关联的?如果它们没有关联,那么您将必须找到具有该 ID 的事件并将其传递给您的邮件。如果它们已经关联,则向我们展示关联,您可以对代码进行建模以了解发生了什么:)
标签: ruby-on-rails ruby ruby-on-rails-3 mongodb mongoid3