2012-06-17 37 views
0

我正在使用authlogic gem。我在下面帮忙 http://railscasts.com/episodes/160-authlogic?autoplay=true 的railscasts视频我碰上当我做 须藤耙宝石一个问题:安装 它给了我一个错误:authlogic不能使用rails 2.3

at /usr/lib/ruby/gems/1.8/gems/rake-0.9.2.2/lib/rake/rdoctask.rb 

rake aborted! 

(eval):1:in `define_callbacks': compile error 

(eval):1: syntax error, unexpected tEQ, expecting '\n' or ';' 
... def self.terminatorresult == false(*methods, &block)  ... 

         ^

我试图卸载耙宝石和重新安装它。 我试图去一个较低版本的耙子,也没有工作。

我应该在这里做什么?

我需要编辑耙宝石 ,包括这有..

base.define_callbacks :persist, :terminator => "result == true" 

我发现上面的 http://pastebin.com/Q3eL53ZJ

如果是的话怎么样? 如果有更好的解决方案,请指导我。

回答

1

确保你没有试图在Rails 2.x中使用master分支,它只与Rails 3.x兼容。

如果您使用Rails 2.x,那么使用rails2分支,实际上我只是使用了旧版本,因为我只想维护一些遗留站点而不必过多关心升级宝石。我使用的版本2.1.5,它工作正常。

祝你好运!

0

为了解决这个问题,我首先打消了我所有authlogic宝石:

 
    gem uninstall authlogic 

我使用的轨道2.3.15因为这是HostGator的使用。匹配的authlogic版本2.1.3是,所以我说这到config/environment.rb:

 
config.gem "authlogic", :version => '2.1.3' 

那时耙宝石:安装。之后,script/generate controller user_sessions命令实际上在模型中生成了user_session.rb。