У меня есть приложение rails, в котором вы можете редактировать информацию об учетной записи. Когда я нажимаю кнопку edit my information
, я получаю следующую ошибку при нажатии ссылки.NoMethodError in Users # edit
NoMethodError пользователей # редактирования - неопределенный метод `имя» для ноль: NilClass
, которая указывает на следующую строку моих пользователей/_form.html.erb
<% else %> <td><%= @user.admin_level.name %>
Мой полный след следования: Pastie
Что-то не так с user.admin_level.name
Что я могу t, похоже, понимает, почему эта ошибка возникает и имя атрибута существует в объекте admin_level.
Мой users_controller имеет следующие четкости редактирования:
# GET /users/:id/edit
def edit
if @user
respond_to do |format|
format.html # edit.html.erb
end
else
redirect_to routing_error_path
end
end
Его, кажется, что я что-то не хватает, мне нужно, чтобы определить имя в моем users_controller?
admin_level ничтожно, поэтому вы не можете вызвать метод на нем. Чтобы избежать этого исключения от взрыва, попробуйте этот код вместо <% = @ user.admin_level.try (: name)%> – mohamagdy