Как мне сказать ActiveScaffold, чтобы всегда показывать форму поиска в виде списка? - PullRequest
2 голосов
/ 10 декабря 2008

Представление списка ActiveScaffold имеет форму поиска, которая загружается через ajax, когда пользователь щелкает ссылку поиска. Я бы предпочел, чтобы форма отображалась по умолчанию, когда пользователь открывает страницу списка.

Я нашел способ инициировать вызов ajax при загрузке страницы, но мне интересно, есть ли способ заставить ActiveScaffold автоматически визуализировать форму. Есть ли шаблон или метод, который я могу переопределить? Я просмотрел код, но ничего очевидного, по крайней мере, для меня.

Обновление:

Ответ srboisvert вдохновил меня на то, чтобы выглядеть лучше.

Хитрость заключается в том, чтобы использовать переопределения шаблонов для рефакторинга следующего: list.rhtml, _list_header.rhtml, _search.rhtml, чтобы частичная форма поиска была встроена.

Ответы [ 3 ]

2 голосов
/ 04 июля 2009

Существует способ сделать это автоматически:

active_scaffold: модель do | config | config.list.always_show_search = true конец

0 голосов
/ 08 февраля 2010

Опция

config.list.always_show_search = true

отлично работает, но только на конкретном контроллере. Выдает исключение при использовании в блоке set_default AS. Кто-то знает лучшее решение, чем включать его в каждый контроллер (кроме переопределения шаблона, который удобен, но усложняет обновление версии)

0 голосов
/ 10 декабря 2008

В настоящее время у меня нет активного проекта scaffold, но вот как я это выясню.

Я бы использовал firefox с установленным firebug и взглянул на то, что вызывается при нажатии на ссылку. Тогда я бы посмотрел на этот javascript и на то, что он генерирует. Затем я искал в источнике любую часть кода или комбинации, которая была бы достаточно уникальной для окна поиска ajax. После этого должно быть легко обрезать и пропустить это без ajaxyness.

...