【问题标题】:Authlogic causing all rails tests to failAuthlogic 导致所有 Rails 测试失败
【发布时间】:2011-02-01 02:46:22
【问题描述】:

我正在使用 Authlogic 在 Rails 3 中构建一个应用程序进行身份验证。我有一个带有数据库表的 User 模型和一个没有数据库表的 user_session 模型

无论我是否运行,我的所有测试都失败了

错误: test_the_truth(UsersControllerTest): ActiveRecord::StatementInvalid: SQLite3::SQLException: 没有这样的表: user_sessions:从“user_sessions”中删除,其中 1=1

它期望 user_session 有一个表,即使它继承自 Authlogic。有人知道如何解决这个问题吗?

【问题讨论】:

标签: ruby-on-rails unit-testing ruby-on-rails-3 authlogic


【解决方案1】:

我遇到了同样的问题,这花了我一段时间才发现……问题是 Authlogic 在数据库中没有表。当我们用 Rails generate 创建会话的时候,这也是自动创建一个fixture,当然后面会失败,因为没有表可以填充数据。解决方法:删除user_sessions的fixture。

阅读更多关于该问题here

【讨论】:

    【解决方案2】:

    确保您在 config/database.yml 中正确定义了测试数据库,然后尝试 rake db:test:preparerake db:migrate RAILS_ENV=test

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-18
      • 1970-01-01
      相关资源
      最近更新 更多