我的表演动作如下:
def show
@car = Car.friendly.find(params[:id])
@cars = @car.other_cars_in_showroom
end
采用适当方法的我的汽车模型是:
def other_cars_in_showroom
cars = self.showroom.cars
cars.delete(self)
cars
end
我的问题是,上述工作正常并且页面呈现正常,但是,在页面刷新后我得到:
nil:NilClass 的未定义方法“汽车”
错误self.showroom.cars
在线。我该如何解决这个问题?我所需要的只是检索同一陈列室中所有其他汽车的列表,@car
然后从列表中删除当前展示的汽车,以减少重复。
在我看来,我正在@cars
为他们每个人呈现这个视图:
<div class="car__photo">
<div class="car__photo-inner">
<%= image_tag car.s3_photo(:thumb), class: 'styled-picture' %>
</div>
</div>
<div class="car__info">
<h4 class="car__info__name"><%= car.name %></h4>
<p class="car__info__park"><%= car.park_name %></p>
</div>
<%= link_to car.name + ' at ' + car.showroom_name, car_path(car), class: 'car__link' %>
我的预期输出是@cars 是与@car 在同一陈列室中但没有@car 本身的所有汽车的列表。