ActiveScaffold жалуется на ассоциацию - PullRequest
0 голосов
/ 22 февраля 2010

Я использую ActiveScaffold для создания интерфейса администратора.

  • У меня есть две модели: сообщение и комментарии.
  • Пост имеет много комментариев, а комментарий принадлежит посту.
  • Существует validates_presences_of: проверка текста модели Comment.

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

Я могу создать новое сообщение вручную из скрипта / консоли.

Что дает?

Ответы [ 2 ]

0 голосов
/ 02 ноября 2011

Вы хотите предотвратить (попытку) создания пустой записи комментария по умолчанию при создании / редактировании сообщения. К счастью, AS имеет параметр API :: Column.show_blank_records для управления этим поведением:

active_scaffold :post do |config|
  config.columns[:comments].show_blank_records = false
end

Это потребует от пользователя нажатия кнопки «Добавить новый» для создания новой записи комментария при создании / редактировании сообщения, поэтому проверка достоверности не будет выполняться для пустой записи.

См. https://github.com/activescaffold/active_scaffold/wiki/API:-Column

0 голосов
/ 17 июня 2010

Возможно ActiveScaffold вещи, которые вы хотите создать хотя бы один комментарий на пост. Я столкнулся с этой проблемой с has-one ... кажется, что ActiveScaffold был бы достаточно умен в случае has-many, но кто знает.

Вот как я решил это для has-one (и в любом случае я хотел UX):

# if post has-one attachment
active_scaffold :post do |config|
  config.columns[:attachment].form_ui = :select
end

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

...