2009-11-03 4 views
2

У меня есть приложение 3yr old, у которого есть некоторые контроллеры с некоторыми очень неуправляемыми действиями. Я пытаюсь реализовать новый ресурс, который имеет отношения к некоторым из старых, но я хочу использовать activescaffold для управления вложенными ресурсами, а не пытаться переписать тарелку спагетти, которая является остальной частью кодовой базы. Мне нужно написать новые контроллеры для вложенных ресурсов, которые используют activescaffold, но я не могу потерять старые контроллеры, и я не могу их переименовать. как я могу получить конфигурацию activescaffold, чтобы забрать конфигурацию для вложенных ресурсов с нового контроллера, а не пытаться посмотреть условно названный контроллер для конфигурации?activescaffold контроллер отсутствует activescaffold работа вокруг

Спасибо ему за помощь :)

-C

ответ

4

Вы можете использовать active_scaffold_controller_for метод переопределения. Из документации ActiveScaffold - http://www.activescaffold.com/docs/api-core

class ApplicationController < ActionController::base 

    protected 

    def self.active_scaffold_controller_for(klass) 
    return FooController if klass == Bar 
    return "#{klass}ScaffoldController".constantize rescue super 
    end 
end 
+0

awesome, thx! Полагаю, я мог бы даже создавать контроллеры динамически здесь, что может быть хорошим способом. thx again :) –

+0

, это заставляет меня задавать другой вопрос: что я должен проверить, чтобы определить, имеет ли контроллер? –

Смежные вопросы