2011-04-24 61 views
1

HI all! 我是Rails的新手,非常感谢您的帮助!(回答这个可能很天真的问题)路由错误 - Railscasts#241简单的OmniAuth

我试图按照“Railscasts#241 Simple OmniAuth”来学习如何使用twitter登录,但我得到每次都有一个路由错误。我真的不知道这里发生了什么事。

No route matches "/test" 

这是我的完整的文件和代码结构: The Codes

感谢, 霍华德

回答

1

你重定向到一个不存在的测试控制器和你没有设置你的路由。看看你的会议控制器和你的routes.rb文件。

看着你下面的教程,你应该有这个在您的会话控制器:

def create 
    ... 
    redirect_to root_url, :notice => "Signed in!" 
end 

你有这样的:

def create 
    redirect_to(:controller => 'test', :action => 'index') 
end 

在你的routes.rb你应该有

Blog::Application.routes.draw do |map| 
    root :to => "articles#index" 

    match "/auth/:provider/callback" => "sessions#create" 

    resources :comments 
    resources :articles 
end 

而且你有

FsApiTest::Application.routes.draw do 

    match "/auth/twitter/callback" => "sessions#create" 

我个人更喜欢阅读这些教程的书面版本,顺便说一句:在配置 http://asciicasts.com/episodes/241-simple-omniauth

+0

感谢您的帮助!我检查了设置,仍然不知道发生了什么。这是我的服务器控制台消息:渲染/Library/Ruby/Gems/1.8/gems/actionpack-3.0.6/lib/action_dispatch/middleware/templates/rescues/routing_error.erb内救援/布局(0.6ms) 和用户通配符路线设置,错误可以在这里吗? – 2011-04-24 09:53:21

+0

嘿霍华德,不客气。看看我的编辑。 – mark 2011-04-24 11:25:23

+0

谢谢马克!我认为这是因为我在充分理解事物在轨道中的工作方式之前,曾围绕轨道玩过。我再次跟着教程,发现一切正常〜我认为问题在我身上,再次,感谢您的帮助! – 2011-04-24 13:54:52

0

尝试增加的TestController/routes.rb中