为 nil:NilClass 错误获取未定义的方法“builder_photo”

Getting undefined method `builder_photo' for nil:NilClass error

我有一个存储在数据库 table Builders 中的 Builder 个人资料图像。

我想在导航栏中显示 current_user 图像,即构建器配置文件图像。

我用的是Sp。

<%= image_tag(@builder.builder_photo.url, class: 'builder-img') %>

这在

中显示了正确的个人资料图片

但在其他页面显示错误

undefined method `builder_photo' for nil:NilClass

我是 rails 的新手。请有人帮我解决这个问题。

这是 rails 中最常见的错误之一。任何时候你看到这种格式: undefined method * builder_photo* for nil:NilClass,这意味着@builder 是 nil(当然 nil 没有 builder_photo 方法)。 这个@builder变量在哪里定义的?

通常你在控制器文件中这样设置变量,例如:

class CarsController < BaseController
  def index
    @builder = Builder.new(a: 1, b: 2)
  end
end