Rails 2.0.2: 差点玩不转

升级到2.0.2,发现玩不转了,默认的sqlite让我忙活了半天,不过这主要是由于对sqlite不熟,但是紧接着发现Textmate没法运行测试,老是出现这个错误:

/opt/local/lib/ruby/gems/1.8/gems/builder-2.1.2/lib/blankslate.rb:84:in `blank_slate_method_added': stack level too deep (SystemStackError)

后来在这里找到解决方案,原来是Textmate自带的builder.rb和系统的冲突了,将Textmate自带的builder.rb改个名即可,build.rb的位置是:”/Applications/TextMate.app/Contents/SharedSupport/Support/lib/Builder.rb”

然后又发现Test class的setup方法失效,根据这个帖子,目前要解决这个问题,只能将Test class改回1.2,直接继承Test::Unit::TestCase(而不是2.0中新增的ActionController::TestCase),或者在每个测试例里手动调用setup。

如果你也升级到了2.0.2,希望这个贴可以为你节省一点点时间。

This entry was posted in 其它. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.
  • nonocast

    我之前就是-d sqlite3
    突然去掉我也不适应
    每次要提醒自己不用加不用加,呵呵

  • http://yudionrails.com yudi

    good stuff, thanks!

  • pig345

    ruby里面要想尽一切办法避免同名,不知lz是否也有同感?

  • George

    我在项目中用到过transaction作model名,总是出现奇怪的错误,不得不改名。可能rails中确实需要想尽一切办法避免同名。:)

无觅相关文章插件,快速提升流量