Проблема с тем же ресурсом, доступным через два маршрута

StackOverflow https://stackoverflow.com/questions/3952389

Вопрос

Я разрабатывающую простое место для обмена изображения для обучения моих Ruby-on-Rails-Fu. У меня есть следующие ресурсы в моем config/routes.rb файл.

resources :users do
  resources :images
end

resources :images

Вот проблема, с которой я сталкиваюсь - как мне пойти в реализацию функциональности, такие как «последние изображения» и «ваши подписки на изображения»? Наличие ванильного ресурса URL здесь, как это выглядит сейчас:

/users/N/images # ImagesController#index action for listing all images for a user
/images # ImagesController#index action for listing all possible images from all users.

Как бы вы пошли по управлению «родительским» объектом изображений при доступе к индексу действий в контроллере изображений? Будет просто проверить :user_id в params Хеш достаточно? Есть ли плагины, я не знаю (так как я не мог придумать простое описание этой проблемы).

Это было полезно?

Решение

Я бы назначал один другой контроллер, чтобы вы не будете смешать их и спутать себя.

resources :users do
  resources :images, :controller => user_images
end

resources :images

Сейчас в user_images_controller, Вы можете рассмотреть возможность получения пользовательского объекта From_Filter (потому что это зависит от данного пользователя: D)

UserImagesController
  before_filter :get_user

  def get_user
    @user = User.find(params[:id])
    // You could also do error checking in before_filters
  end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top