如何将设备中的资源暴露给另一个控制器?

The*_*Guy 4 ruby ruby-on-rails devise

我试图在模态中呈现默认设计编辑注册视图.从另一个控制器调用模态..在这种情况下,Home_controller.

我在我的模态标签中有<%= render:template,'devise/registrations/edit'%>,当点击启动模式按钮时它被调用但是rails通过我一个未定义的变量方法来设计资源的使用.我知道资源只是一个用户对象,但是家庭控制器不知道如何解决这个问题,我认为渲染模板方法可以解决这个问题,让rails使用设计注册控制器.

有任何想法吗?我真的很想让deafault设计控制器简化未来的功能吗?如何从一个控制器中的不同控制器调用视图,从而允许被调用控制器中的所有操作都可用.

Eri*_*sen 8

尝试将此添加到application_helper.rb(来自The Devise Wiki)

  def resource_name
    :user
  end

  def resource
    @resource ||= User.new
  end

  def devise_mapping
    @devise_mapping ||= Devise.mappings[:user]
  end
Run Code Online (Sandbox Code Playgroud)

  • 如果我有多个资源,我该如何实现这一目标?一个用于客户,一个用于管理员.问候. (2认同)