[英]Different registration process with devise / cancan but only one User model?
到目前為止,我一直試圖使用設計允許2個不同的注冊路徑到同一個用戶模型。
我的用戶模型鏈接到其他數據模型,但在注冊時我並不關心。 但我仍然希望“顯示”用戶的差異(網址路徑,外觀和感覺等)加上當然我想在用戶模型中保存我的用戶所用的用戶類型,以便稍后再回來指出並詢問我需要填寫我的其他模型(鏈接到用戶)。
我已經探索了改寫我自己的注冊控制器的道路,但是我不知道這對路線有什么幫助...我想要像:/ usertype1 / signup和/ usertype2 / signup虛擬更多比2個usertypes,但最后它應該只創建最簡單的用戶模式(電子郵件,密碼,確認,usertype)。
在這一點上歡迎任何建議:)
亞歷克斯
我最后做的是必須將自定義路由指向同一個注冊頁面:
devise_for :users, :controllers => { :registrations => "registrations" } do
get '/author/sign_up', :to => 'registrations#new'
get '/client/sign_up', :to => 'registrations#new'
end
然后在注冊頁面上,我只需添加一個隱藏字段,其值根據url更改:
- if request.fullpath =~ /\/author\/sign_up/
- session[:registration] = "author"
= render 'author'
- elsif request.fullpath =~ /\/client\/sign_up/
- session[:registration] = "client"
= render 'client' '
所以我可以在注冊時呈現2個不同頁面的外觀。 這可以與X不同類型的用戶一起使用。
亞歷克斯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.