未定义方法`permit'表示“1”:字符串 - RSPEC

问题描述 投票:3回答:1

我有点荒谬但我真的不知道这个错误试图告诉我什么?我是rspec的新手,对我来说这是一个新手。为了清楚起见,我将发布我的代码 - 错误:未定义的方法`permit'为“1”:字符串|

控制器:

def subscriber_params
  params.require(:subscriber).permit(:first_name, :last_name, :email, :phone_number)
end

SPEC:需要“rails_helper”

describe SubscribersController do
  include Devise::TestHelpers

  let(:user) { FactoryGirl.create(:user) }
  let(:subscriber) { FactoryGirl.create(:subscriber) }

  it "creates a new comment" do
    sign_in(user)
    comment = FactoryGirl.attributes_for(:comment)

    expect { post :create, subscriber: subscriber, comment: comment }.to change(Comment, :count).by(1)
  end
end

错误:

enter image description here

ruby-on-rails ruby rspec
1个回答
5
投票

更改

let(:subscriber) { FactoryGirl.create(:subscriber) }

let(:subscriber) { FactoryGirl.attributes_for(:subscriber) }

因为您希望将订阅者的属性添加到请求而不是订阅者的实例。

© www.soinside.com 2019 - 2024. All rights reserved.