рендеринг пользовательского помощника формы (ckeditor_rails) в форме activeadmin: - PullRequest
1 голос
/ 16 октября 2011

У меня есть два камня, которыми я пользуюсь и наслаждаюсь

драгоценный камень 'activeadmin' а также драгоценный камень "ckeditor"

Я бы хотел, чтобы в моем поле для контента использовался ckeditor.

В моих прошлых приложениях я рендерил ckeditor в такой форме:

<%= form_for @resource do |f| %>
  <div class="field">
     <%= f.label :content %>
     <br />
     <%= cktext_area_tag("page_part[content]", @page_part.content) %>
  </div>
...
<% end %>

Теперь я просто добавил activeadmin в свой стек и мне нравится то, что я вижу до сих пор. Итак, я прочитал, что вы можете настроить форму следующим образом, отредактировав файл app / admin / # {resource} .rb:

  ActiveAdmin.register NewsItem do
    form :html => { :enctype => "multipart/form-data" } do |f| 
      f.inputs "NewsItem", :multipart => true do
      f.input :title
      f.input :content
      f.input :photo
      #NOT WORKING 
      cktext_area_tag("news_item[content]", @news_item.content)
      #NOT WORKING
     end 
     f.buttons
   end 
 end

Как мне заставить этот помощник по форме работать в active_admin, и что бы я положил вместо @ news_item.content. @news_item имеет значение null ... Так что сейчас я немного растерялся.

Когда я пытаюсь даже без ссылки на @news_item вот так:

  cktext_area_tag("news_item[content]", 'i cant be edited properly')

Я все еще получаю:

  undefined method `cktext_area_tag' for #<ActiveAdmin::DSL:0x00000007e02250>

Любая помощь будет оценена!

Ответы [ 2 ]

2 голосов
/ 12 января 2012

Можно попробовать

f.template.some_view_method    
2 голосов
/ 17 октября 2011

Хорошо,

Ответ был довольно прост.

Взято с собственной страницы документации активного администратора: http://activeadmin.info/docs/5-forms.html

 ActiveAdmin.register Post do
   form :partial => "form"
 end

Тогда я смог использовать любые теги вспомогательных форм, которые я хотел:

  <%= javascript_include_tag "/javascripts/ckeditor/ckeditor.js" %>
     <%= semantic_form_for [:admin, @news_item], :multipart => true do |f| %>
     <%= f.inputs :title, :photo %>
     <%= cktext_area_tag("news_item[content]", @news_item.content) %>
  <% end  %>  
...