Я получаю следующее сообщение об ошибке на следующей форме: NoMethodError в Администратор :: Пользователи # указательным не определен метод `model_name» для ActiveRecord :: Relation :: ActiveRecord_Relation_User: КлассНеопределенный метод - «название модели»
Эта форма находится на странице индекса. Любые идеи, я получаю эту ошибку?
Форма:
<% @user.each do |user| %>
<div class="modal-footer">
<%= form_for(@user, :url => admin_user_inactive_path(user.id), html: { "role" => "form" }) do |f| %> # Error is occurring here...
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Inactivate User</button>
<% end %>
</div>
<% end %>
Пользователи Контроллер:
def index
@user = User.where(del_flag: false).order('last_name DESC')
end
...
def inactive
@user = User.find(params[:user_id])
if @user.update_attribute(:inactive, true)
flash[:success] = "The account (" + @user.first_name + " " + @user.last_name + ") has been inactivated."
redirect_to action: :index
else
render 'edit'
end
end
Ваша переменная @user - это ActiveRecord :: Relation, а не один экземпляр пользователя. \ – MrYoshiji
Я думаю, что у вас есть ошибка admin_user_inactive_path (user.id) должен быть admin_user_inactive_path (@ user.id) также добавить User.where (...). Order (..). First – sirfilip
Я изменил приведенный выше код, чтобы включить '<% @ user.each do | user | %> ' – evanvee