Приложение Rails 3.2: неопределенный метод `klass 'для nil: NilClass для класса, который существует и прекрасно отображает на странице - PullRequest
0 голосов
/ 18 марта 2012

Я использую довольно простое приложение Rails 3.2 на Dreamhost (я знаю, что это плохо).

Ошибка:

NoMethodError in Products#edit

Showing /home/emeraldcityguitars/emeraldcityguitars.com/releases/20120318040051/app/views/products/edit.html.erb where line #47 raised:

undefined method `klass' for nil:NilClass
Extracted source (around line #47):

44:   <div id="interior_sub_head"><h5 id="sub_green_head"><%= @product.title %></h5></div>
45:   <div id="interior_pad">
46: 
47:     <%= nested_form_for @product, :html => { :multipart => true } do |f| %>
48:     <%= f.error_messages %>
49: 
50:     <fieldset>  

Звучит так, будто @product возвращает ноль, но если вы посмотрите на строку 44, в этом случае не возникла ошибка при запросе @product?

есть идеи?

РЕДАКТИРОВАТЬ

Полный просмотр продукта # редактировать представление: https://gist.github.com/2081340

+

_photo_fields.html просмотр: https://gist.github.com/5af2f88f29c21e24b42c

Спасибо

Ответы [ 2 ]

0 голосов
/ 30 октября 2015

Я переключался с has_many на has_one и получал ту же ошибку. Ответ Азоло решил мою проблему.

Удален тег <% = f.link_to_add ......%>, и все работает отлично!

0 голосов
/ 23 марта 2012

У меня была та же проблема, и я сделал два изменения, к сожалению, не по отдельности, и один или оба решили проблему.

Во-первых, в вашем контроллере вы строите фотографию методом редактирования?

@product.photos.build if @product.photos.empty?

Я обнаружил, что в комментариях к этому сообщению в блоге .

Во-вторых, я добавил символ для вложенного класса в строку link_to_add, которая у вас уже есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...