ActiveScaffold - Задание условий во встроенном каркасе - PullRequest
0 голосов
/ 01 июня 2009

У меня есть модель Project и модель TaskType. Ассоциация между ними происходит через модель ProjectTaskType (поддерживается таблицей ссылок / соединений в БД с внешними ключами для обоих проектов и TaskTypes).

Проект имеет_Много Типы задач: через ProjectTaskType и TaskTypes has_many Проекты: через ProjectTaskType.

У меня есть vew со встроенным каркасом и я хочу показать все TaskTypes, принадлежащие данному проекту.

Может кто-нибудь подсказать мне, как мне написать условия для этого?

<%= render 
   :active_scaffold => :task_type, 
   :label => 'Task Types', 
   :conditions => "TaskTypes which are associated with @project 
                   through the ProjectTaskType" %> 

И может ли моя логика фильтрации пойти куда-нибудь еще?

Спасибо

1 Ответ

0 голосов
/ 01 июня 2009

В контроллере ActiveSacffold я добавил этот метод перехвата AS ...

def условие_for_collection subquery = "SELECT t.id из # {TaskType.table_name} t, # {ProjectTaskTypes.table_name} ptt где (t.id = ptt.task_type_id и ptt.project_id = # {project_id}) "

"id in (# {subquery})" конец

...