首页 > 解决方案 > nil:NilClass 的未定义方法“bytesize”

问题描述

这个错误是什么意思?

NoMethodError (undefined method `bytesize' for nil:NilClass):

我该如何解决?只有我需要简短的例子..

注意:我一般需要有关此错误的信息,在我的情况下或我的代码难以解决,因为我只需要信息。谢谢大家

标签: ruby-on-railsruby

解决方案


我一般需要有关此错误的信息 [...]

NoMethodError每当您调用接收者不响应的方法时都会引发。

错误消息包含方法的名称、接收者及其类:

"foo".bar
# NoMethodError (undefined method `bar' for "foo":String)
#                                  ^^^      ^^^^^ ^^^^^^
#                                method   receiver class

[...] 就我而言

你的方法是bytesize,接收者是nil。在你的代码库的某个地方,你有类似的东西:

obj.bytesize

obj存在nil。很可能,obj没有正确设置。

我认为这obj应该是一个字符串,因为在 Ruby 核心和标准库中只String实现了bytesize.

我该如何解决?

错误消息/回溯通常包含应该指向正确方向的文件和行号。

您可以通过确保它obj不在nil首位来解决错误。


推荐阅读