CKEditor на пользовательской странице в activeadmin - PullRequest
0 голосов
/ 24 мая 2018

У меня возникла следующая проблема:

Я хочу добавить форму на пользовательскую страницу (без модели), чтобы создать электронное письмо для mailjet.Я уже получил пользовательскую страницу и форму с вводом CKEditor и вводом для предмета.Но поле темы не отображается на странице.

Это мой код:

ActiveAdmin.register_page "Mail", namespace: :lku do

  def send_mail

  end

  content do
    panel 'Write mail' do

      semantic_form_for :mail, :url => "lku/send_mail", method: :post do |f|

        f.inputs do
          f.input :subject, :input_html => { :name => 'subject' }
        end
        f.inputs do

        f.input :text, as: :ckeditor, :input_html => { :name => 'text' }
        end
      end
    end
  end
end

И вот результат:

ckeditor without subject field

Когда я добавляю

f.actions

это выглядит так

just submit button

Может кто-нибудь помочь мне, пожалуйста?

1 Ответ

0 голосов
/ 30 мая 2018

Я смог воспроизвести проблему, не имея ckeditor.Будет отображаться только последний элемент формы.

Я не знаю точно, что происходит, но это как-то связано с тем, как Arbre отображает контент, который вы генерируете внутри блока content.

Мое решение таково:

  1. Преобразуйте содержимое формы в .erb и переместите форму в views/lku/mail/_mailform.html.erb

    <%= semantic_form_for :mail do |f| %>
      <%= f.inputs do %>
        <%= f.input :subject %>
        <%= f.input :text %>
      <% end %>
      <%= f.actions %>
    <% end %>
    
  2. Включитеформа на странице

    content do
      panel 'Write mail' do
        render partial: 'mailform'      
      end
    end
    

Посмотрите, можете ли вы по-прежнему монтировать редактор с помощью обычных помощников форм Rails - https://github.com/galetahub/ckeditor#form-helpers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...