如何从静态页面向Rails应用程序提交表单内容?

时间:2012-10-19 18:24:47

标签: html ruby-on-rails ruby

我有一个现有的静态HTML页面,我希望添加一个电子邮件注册表单。为了时间的利益,我不想重新创建页面作为视图。是否可以使用静态表单向Rails控制器提交新电子邮件?

在HTML页面上:

<form method="POST" action="" class="emails">
<input type="text" class="inputbox">
<input type="submit" value="Sign up" class="button" />
</form>

现有的Rails控制器:

def create
  @subscription = Subscription.new(params[:subscription])

  respond_to do |format|
    if @subscription.save
      format.html { redirect_to @subscription, notice: 'Subscription was successfully created.' }
      format.json { render json: @subscription, status: :created, location: @subscription }
    else
      format.html { render action: "new" }
      format.json { render json: @subscription.errors, status: :unprocessable_entity }
    end
  end
end

2 个答案:

答案 0 :(得分:3)

输入上的name属性将确定params中的哈希键。

那么

<input type="text" name="foo">

将通过

提供
params[:foo]

答案 1 :(得分:1)

使用<input type="text" class="inputbox" name ="subscription[name]">,假设name是订阅表中的字段。