如何在我的Rails应用程序中将第三方表单与参数集成?

时间:2015-02-19 21:42:11

标签: html ruby-on-rails forms

我需要在我的RoR 4.2应用程序中集成Insightly CRM的注册表单。生成和复制表单工作正常。我试过两种方法:

  1. 在Rails框架内,设置指向register.html.erb文件的路径
  2. 在框架旁边,将register.html文件存储在公用文件夹中
  3. 这是register.htmlfile中定义的表单:

        <form name="insightly_web_to_contact" action="https://3dpm22c7.insight.ly/WebToContact/Create" method="post">
          <input type="hidden" name="formId" value="2prk0LYdnS7meZcIkHGrYg=="/>
          <label for="insightly_firstName">First Name: </label>
          <input id="insightly_firstName" name="FirstName" type="text"/>
          ...
          <input type="submit" value="Submit"/>
        </form>
    

    现在我想将参数传递给表单以预填充一些字段。所以我写了网址:http://localhost:3000/register?FirstName=FRED

    但它没有初始化输入字段的变量:

    是否可以在框架内完成?

    让它工作的语法是什么?

    感谢您的帮助。

    佛瑞德

1 个答案:

答案 0 :(得分:1)

我会在您的控制器中设置变量,这样您就不会担心视图中的参数,因为这不是它的工作。您可以在控制器操作中设置实例变量,然后使用erb设置值,如:

class YouController < MyApp::ApplicationController
  def index
    @first_name = params['FirstName']
    #So on
  end
end

<input id="insightly_firstName" name="FirstName" type="text" value="<%= @first_name %>" />

你也可以选择使用rails form helper来构建你的表单,虽然这对我的代码来说并不重要。