我想将 Devise 的编辑注册表单分成两个单独的页面,例如站点/编辑和站点/设置。设置页面将用于密码、电子邮件等字段,而编辑仅用于用户信息。我将如何实现这一点我还没有真正找到太多关于此的文档。
问问题
867 次
1 回答
2
我已经自己解决了这个问题,我不必创建单独的模型,试图保持一切简单以备将来集成。我会为可能遇到此问题的其他人发布我的答案。很惊讶没有更清晰的文档。
创建一个继承自 Devise 生成的控制器的独立 RegistrationsController:
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_scope :member do
root :to => 'devise/registrations#new'
match '/settings' => 'registrations#settings', as: :settings
end
于 2013-10-06T17:13:06.667 回答