我想将Devise的编辑注册表单分成两个单独的页面,例如站点/编辑和站点/设置。设置页面将用于密码,电子邮件等字段,而编辑仅用于用户信息。我将如何实现这一点我还没有真正找到这方面的文档。
答案 0 :(得分:2)
我自己想出了这个,我没有必要创建一个单独的模型,试图保持一切简单,以便将来集成。我会为可能遇到此问题的其他人发布我的答案。感到惊讶的是没有更明确的文件。
创建一个独立的RegistersController,它继承自Devise生成的控制器:
class RegistrationsController < Devise::RegistrationsController
def settings
@member = current_member
if @member
render :settings
else
render file: 'public/404', status: 404, formats: [:html]
end
end
end
在您的Devise注册文件夹中创建相应的视图(我刚刚从现有的编辑表单中复制了我需要的字段),然后调用路线中的方法:
devise_scope :member do
root :to => 'devise/registrations#new'
match '/settings' => 'registrations#settings', as: :settings
end