1

我正在关注 Michale Hartl 教程的第 8 章。当我添加:

  it { should respond_to(:remember_token) }

对于 user_spec.rb 文件,测试失败,失败通知直接指向文件中的这一行。

在添加此行之前,所有测试都过去了。

添加此行之后(以及在运行测试之前)我采取的唯一其他步骤是运行一个记住令牌:

$ rails generate migration add_remember_token_to_users

然后我更新了 db/migrate/[timestamp]_add_remember_token_to_users.rb 如下:

class AddRememberTokenToUsers < ActiveRecord::Migration
  def change
    add_column :users, :remember_token, :string
    add_index  :users, :remember_token
  end
end

和往常一样开发和测试数据库:

$ bundle exec rake db:migrate
$ bundle exec rake db:test:prepare
4

1 回答 1

1

作为Spork缓存 rails 环境,它在重新启动之前不知道迁移。

因此,您需要重新启动Spork服务器,以便它重新加载 Rails 环境,包括新的迁移。

于 2012-04-19T01:56:51.840 回答