首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RailsTutorial: NoMethodError 'permanent‘Rake::Test::CookieJar

RailsTutorial: NoMethodError 'permanent‘Rake::Test::CookieJar
EN

Stack Overflow用户
提问于 2012-10-04 02:04:47
回答 1查看 487关注 0票数 3

app/helpers/session_helper.rb

代码语言:javascript
复制
module SessionsHelper
  def sign_in(user)      
    cookies.permanent[:remember_token] = user.remember_token
    self.current_user = user
  end
  def sign_out
    self.current_user = nil
    cookies.delete(:remember_token)
   end
   def signed_in?
     !current_user.nil?
   end
   def current_user=(user)
     @current_user = user
  end
  def current_user
    @current_user ||= User.find_by_remember_token(cookies[:remember_token])
  end
end

9.2.1 Requiring signed-in users一节中定义的测试失败:-起初我得到的是sign_in方法找不到,然后我添加了

代码语言:javascript
复制
include SessionsHelper

在spec/Utities.rb文件中,我开始看到下面的错误,说Rake::Test::CookieJar中不存在名为permanent的方法。

是不是因为一些Gem版本问题。

代码语言:javascript
复制
1) User Pages edit page 
 Failure/Error: before { sign_in user}
 NoMethodError:
   undefined method `permanent' for #<Rack::Test::CookieJar:0x007ff12c661e88>
 # ./app/helpers/sessions_helper.rb:3:in `sign_in'
 # ./spec/requests/user_pages_spec.rb:55:in `block (3 levels) in <top (required)>'
EN

回答 1

Stack Overflow用户

发布于 2012-10-31 14:02:26

只是遇到了同样的问题,并得到了解决。

似乎他们指的不是sessions_helper.rb中的sign_in方法,而是spec/support/utilities.rb中的sign_in方法

在我的例子中,utilities.rb中的这个帮助器方法有一个不同的名称,重命名后一切正常:-)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12714242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档