我有一个现有的静态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
答案 0 :(得分:3)
输入上的name
属性将确定params
中的哈希键。
那么
<input type="text" name="foo">
将通过
提供params[:foo]
答案 1 :(得分:1)
使用<input type="text" class="inputbox" name ="subscription[name]">
,假设name是订阅表中的字段。