首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在rails插件中设计路线是不正确的

在rails插件中设计路线是不正确的
EN

Stack Overflow用户
提问于 2014-04-27 07:46:29
回答 1查看 38关注 0票数 0

我正在开发一个rails插件。我想在插件中使用devise进行身份验证。

这些路线似乎画得不对:

代码语言:javascript
复制
Routes for Subscribem::Engine:
        new_user_session GET    /users/sign_in(.:format)       subscribem/sessions#new
            user_session POST   /users/sign_in(.:format)       subscribem/sessions#create

它们应该是:

代码语言:javascript
复制
        new_user_session GET      /users/sign_in(.:format) devise/sessions#new
            user_session POST     /users/sign_in(.:format) devise/sessions#create

这是插件的路由文件:

代码语言:javascript
复制
Subscribem::Engine.routes.draw do
  devise_for :users, class_name: "Subscribem::User"

插件是用命名空间隔离的:

代码语言:javascript
复制
module Subscribem
  class Engine < ::Rails::Engine
    isolate_namespace Subscribem

如果我移除isolate_namespace,设计路线就可以了。但我仍然想隔离插件自己的控制器。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-27 08:00:14

我有一个选择:

在插件路由中,我可以覆盖控制器:

代码语言:javascript
复制
devise_for :users, class_name: "Subscribem::User", controllers: { sessions: 'devise/sessions', passwords: 'devise/passwords', registrations: 'devise/registrations' }

但我们欢迎更多的选择。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23320723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档