Ruby on rails 在Rails中的表单处理过程中,我可以将cookie值与其他数据一起保存吗?

Ruby on rails 在Rails中的表单处理过程中,我可以将cookie值与其他数据一起保存吗?,ruby-on-rails,ruby-on-rails-2,Ruby On Rails,Ruby On Rails 2,我在Rails控制器中设置了三个cookie,以获取访问者登陆站点时的一些信息。当他们提交表单时,我需要将这三个cookie的值与其他表单数据一起保存在数据库表中。我已经运行了迁移来添加额外的列,但是我没有发现任何有助于在表单提交时实际保存值的东西 有人知道这是否可行吗?如果有,我将如何做到 def process_contact_us @form = Form.find(1) @contact_submission = ContactSubmission.new(params[:con

我在Rails控制器中设置了三个cookie,以获取访问者登陆站点时的一些信息。当他们提交表单时,我需要将这三个cookie的值与其他表单数据一起保存在数据库表中。我已经运行了迁移来添加额外的列,但是我没有发现任何有助于在表单提交时实际保存值的东西

有人知道这是否可行吗?如果有,我将如何做到

def process_contact_us
@form = Form.find(1)    
@contact_submission = ContactSubmission.new(params[:contact_submission])    
if @contact_submission.save
  if @contact_submission.newsletter
    begin
      logger.info "Sending autoresponder"
      et = ExactTarget.new(ApplicationController::ET_USER,ApplicationController::ET_PASS, true)
      et.add_subscriber_with_options({
        "Email__Address" => @contact_submission.email,
        "First__Name" => @contact_submission.first_name,
        "Last__Name" => @contact_submission.last_name,
        "Address" => @contact_submission.address,
        "Address__2" => @contact_submission.address2,
        "City" => @contact_submission.city,
        "State" => @contact_submission.state,
        "Zip__Code" => @contact_submission.zip,
        "TravelNewsletter" => "Yes"
      }, ApplicationController::ET_LIST_ID)
      et.single_send(@contact_submission.email, ApplicationController::ET_EMAIL_ID, "", "")             
      logger.info "Added to ET"
    rescue
    end
  end

  Notifier.deliver_contact_us(@contact_submission, @form)

  session[:form] = nil
  redirect_to "/contact-us/thank-you"
else
  flash[:form] = @contact_submission
  flash[:notice] = @form.error_message.blank? ? "First Name, Last Name, and Email are all required fields." : @form.error_message
  redirect_to :back
end

end

要将信息保存到contact_submission对象,应在使用表单中的值进行初始化后设置其值,但在保存之前:

@contact_submission = ContactSubmission.new(params[:contact_submission])
@contact_submission.super_cool_value = cookies[:super_cool_value]
if @contact_submission.save
  #.. continue on

您要保存的模型名称是什么?是否可以添加正在提交时执行的控制器操作方法?模型名称为contact submission。我将查看是否可以编辑以上内容以添加控制器操作。