Двойные контроллеры при использовании пространства имен в рельсах? - PullRequest
1 голос
/ 09 августа 2011

Я работаю над приложением с пространством имен (раздел администратора). Есть ли СУХОЕ решение для того, чтобы не создавать 2 контроллера? Потому что мне нужно будет создать публичный пользовательский контроллер и административный пользовательский контроллер для управления пользователями.

Ответы [ 2 ]

1 голос
/ 09 августа 2011

Как насчет наследования пользовательского контроллера? Я использую его сам (для изображений), и он мне подходит:

# file: apps/controllers/images_controller.rb
class ImagesController < ApplicationController
  # image code (to show the image for example)
end

# file: apps/controllers/admin/images_controller.rb
class Admin::ImagesCOntroller < ImagesController
  # additional admin code (to delete the image for example)
end
0 голосов
/ 09 августа 2011

Вы можете рассмотреть рендеринг страницы с дополнительными кнопками «edit». Например, что-то вроде этого:

Name: <%= @user.name %>
<% if @user.admin? %>
 <% form_for @user do |f| %>
   Editing stuff
 <% end %>
<% end %>

Таким образом, пользователь видит его только как страницу, но администратор видит дополнительные элементы управления, которые позволяют ему редактировать поле. Постскриптум Убедитесь, что в контроллере вы проверяете, чтобы убедиться, что администратор вызывает вызов обновления.

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