text_field_tag ​​с ActiveAdmin - PullRequest
       28

text_field_tag ​​с ActiveAdmin

0 голосов
/ 26 июня 2019

Мне тяжело с ActiveAdmin и их DSL. Я использую его для построения моего администратора, и в какой-то момент в форме мне нужно иметь text_field_tag; Я имею в виду некоторые поля, которые не связаны с моделью, которой я манипулирую, в форме, которая будет отправлена ​​с данными, связанными с моделью.

Пользовательское текстовое поле в основном. Ничего слишком сумасшедшего.

Итак, я построил это

panel 'Send payment authorization' do
  active_admin_form_for EventPaymentAuthorization.new, url: { action: :send_event_payment_authorization } do |f|
    f.inputs do
      f.input :body, as: :text

      f.text_field_tag :line_items_label
      f.text_field_tag :line_items_amount

      f.input :fees_in_cents, as: :select, collection: [:free, :automatic], prompt: true, selected: :automatic
    end
    f.actions do
      f.action :submit, label: 'Create payment authorization'
    end
  end
end

ActiveAdmin просто игнорирует f.text_field_tag. Это почему? Это не вызывает никакой ошибки, но это также не показывает.

Причина, по которой мне нужны пользовательские несвязанные входные данные, заключается в том, что line_items в моем примере - это JSONB со значениями, такими как [{amount: 0.0, label: 'Hello'}], и я не верю, что его можно обрабатывать с помощью Formtastic или ActiveAdmin. Также всегда хорошо иметь возможность создавать пользовательские входы при отправке данных.

1 Ответ

0 голосов
/ 29 июня 2019

Работа с JSON в ActiveAdmin немного сложна, в значительной степени зависит от ваших потребностей.Самый быстрый способ начать работу - использовать камень activeadmin_json_editor .Я также написал запись в блоге о работе с JSON в ActiveAdmin с более подробной информацией и другим подходом, который может лучше удовлетворить ваши потребности, так как кажется, что вы работаете не только с произвольными данными в поле JSON.

...