gpt4 book ai didi

ruby-on-rails - 设计测试助手 - sign_in 不起作用

转载 作者:行者123 更新时间:2023-11-28 19:43:21 27 4
gpt4 key购买 nike

出于某种原因,我无法让设计辅助方法 sign_in 工作。 current_user 一直为空。知道问题出在哪里吗?

测试:

  before :each do
@user = FactoryGirl.create :user
sign_in @user
end

describe "GET index" do
it "assigns all subscribers as @subscribers" do
subscriber = @user.subscribers.create! valid_attributes
get :index
assigns(:subscribers).should eq([subscriber])
end
end

实现:

  def index
@subscribers = current_user.subscribers.all <------- ERROR

respond_to do |format|
format.html # index.html.erb
format.json { render json: @subscribers }
end
end

Error:
NoMethodError:
undefined method `subscribers' for nil:NilClass

感谢任何帮助。谢谢!

最佳答案

如果您在User 模型(或其他设计可验证模型)中包含Confirmable 模块,那么您创建的测试@user必须确认 sign_in 才能生效:

before :each do
@user = FactoryGirl.create :user
@user.confirm!
sign_in @user
end

(我知道这不是您的问题,但也许其他读者会从中受益。)

关于ruby-on-rails - 设计测试助手 - sign_in 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12226502/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com