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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未定义方法`permit'表示“1”:字符串 - RSPEC相关的知识,希望对你有一定的参考价值。

我有点荒谬但我真的不知道这个错误试图告诉我什么?我是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

答案

更改

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

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

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

以上是关于未定义方法`permit'表示“1”:字符串 - RSPEC的主要内容,如果未能解决你的问题,请参考以下文章

关于 '0' === 0 浅析

node.js使用fs模块的renameSync方法报错“ EXDEV: cross-device link not permitted, rename ‘F‘ -> ‘G“

ACL

使用node.js中fs模块的copyFileSync方法复制文件报错“operation not permitted, copyfile ‘G: est.txt‘ -> ‘G:Trash‘“(代码片

c语言定义一维数组,元素未初始化,那数组元素默认值是啥

“未结束的字符串常量”是嘛意思?如何解决?