У меня очень длинная форма внутри Rails Active Admin.
Я бы хотел настроить базовые сообщения об ошибках, то есть ошибки, отображаемые в верхней части страницы (а не в каждом поле), чтобы вместо того, чтобы быть просто сообщением по умолчанию (см. Пример ниже), Пользователь может иметь внутри этого текста «короткую ссылку», то есть ссылку на поле с ошибкой, чтобы он мог просто щелкнуть и перенести на страницу в поле с ошибкой.
Текущее сообщение об ошибке:
Сообщение об ошибке, которое я хотел бы получить
Например, текст на изображении выше может выглядеть так:
Images at least one image is required. <a href="#link_to_anchor_of_field_with_error">Please check it</a>.
Обратите внимание, что на моей странице формы кемпинга я могу редактировать атрибуты кемпинга, но также комнаты (они имеют отношение / has_many к модели кемпинга => в одном кемпинге много комнат)
Так что это должно быть применимо как к атрибутам Camping, так и к атрибутам связанных комнат, если они обнаружат ошибки при отправке формы
ActiveAdmin.register Camping do
form do |f|
f.semantic_errors *f.object.errors.keys
f.inputs "Information for the Camping" do
f.input :name,
f.input :city
end
f.inputs "Rooms" do
f.has_many :rooms,
allow_destroy: true,
heading: false,
new_record: true,
sortable_start: 0 do |room|
room.input :name,
room.input :room_nb,
room.input :facilities
end
end
end
Я даже не уверен, должно ли это быть сделано в конфигурации Active Admin или более внутри конфигурации Formtastic, то есть той формы, которую использует DSL Active Admin. Возможно, настройки, найденные в этом посте ( Заставьте semantic_errors отображать точное сообщение об ошибке ), могут быть использованы, но это далеко за мой уровень:)