forem gem for rails给出自定义身份验证Rails 3.1的问题

时间:2012-01-06 21:05:35

标签: ruby-on-rails routes gem forum

安装forem后,当我执行localhost:3000 / forums时会弹出此错误

  

Forem / forums#index中的NoMethodError

     

#<#:0xc620c6c>

的未定义方法`users_path'

这是我的_new.html.haml,它表示错误出现在我使用过的行= semantic_form_for

.container
    .row
        .twelve.columns
            .signupModal.reveal-modal
                =semantic_form_for(@user = User.new, :validate => true) do |f|
                    =f.inputs do
                        =f.input :email, :label => "Email"
                        =f.input :password, :label => "Password"

以下是路线的代码: -

resources :users

  match '/signup', :to => 'users#new'

  resources :sessions, :only => [:new, :create, :destroy]
  match '/signin', :to => 'sessions#new' 
  match '/signout', :to => 'sessions#destroy'

应该很简单我不知道我在哪里错过它。

P.S: - 我在没有去/论坛的情况下运行应用程序时没有遇到任何问题。在这种情况下,所有路径都正常工作。

1 个答案:

答案 0 :(得分:1)

引用“Rails3 In Action”一书:

  

这种情况正在发生,因为您的引擎正在使用该应用程序   布局,并试图从内部引用admin_root_path方法   引擎,而不是应用程序中定义的引擎。至   解决这个问题,你需要先为这些路由助手调用main_app   然后打电话给那个帮手。

将users_path替换为main_app.users_path,它应该可以工作。