我有一個表單,我希望要求用戶在查看其他頁面之前提交表單。但是,這不應該要求登錄或用戶身份驗證。有沒有辦法解決?本質上,我想阻止用戶使用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