我有一个表单,我希望要求用户在查看其他页面之前提交表单。但是,这不应该要求登录或用户身份验证。有没有办法解决?本质上,我想阻止用户使用url跳到内容。在查看页面之前需要提交表格 - rails
我正在考虑在f.submit操作上添加一个Jquery模式?任何想法或建议将不胜感激。
我有一个表单,我希望要求用户在查看其他页面之前提交表单。但是,这不应该要求登录或用户身份验证。有没有办法解决?本质上,我想阻止用户使用url跳到内容。在查看页面之前需要提交表格 - rails
我正在考虑在f.submit操作上添加一个Jquery模式?任何想法或建议将不胜感激。
当用户提交表单(没有服务器响应http GET来提供该页面)时,您可以将http页面作为http POST响应返回。这样,你首先收集表单的信息,然后发送回应的页面。
在config/routes.rb
创建一个POST路线:
post 'form', to: 'form#create'
在你的控制器,保存表单数据你有兴趣,并与页面响应:
def create
#save the form data in a Form model?
@form = Form.new form_params
if @form.save
render :page
else
redirect_to :new
end
end
你需要调整上述代码以适应您的需求。
这听起来像是会起作用的,你能否指点我在哪里寻找开始的正确方向? – jpdvi
您可以使用会话变量来确定用户是否访问过第一个页面,如果他们没有访问过第一个页面并将它们从其他url重定向。实际上,你甚至不需要重定向,只需加载你希望他们首先看到的页面内容即可。 – sunny
我需要让人们输入他们的姓名和电子邮件,才能查看用户控制的页面。客户要求他们不必注册一个账户,但有权查看该页面,并要求他们记录他们的姓名和电子邮件。 – jpdvi