2017-02-13 3 views
1

내 테이블 필드 중 하나에 XML 데이터가 문자열로 저장되어 있습니다. 나는 그것을 ActiveAdmin에 읽을 수있는 방식으로 표시하려고합니다. 나는 이것을하는 방법을 발견했다. 그러나 그것은 믿을 수 없을만큼 hackish하다.XML 필드를 ActiveAdmin에 멋지게 표시 하시겠습니까?

ActiveAdmin.register SyncLog do 
    show do 
    attributes_table do 
     row :request do |log| 
     if log.request 
      xml_string = Nokogiri::XML(log.request, &:noblanks).to_xml 
      "<pre>#{xml_string.gsub(/</, '&lt;').gsub(/>/, '&gt;')}</pre>".html_safe 
     end 
     end 
    end 
    end 
end 

는 DB에있는 문자열이 될 수 있습니다 : 여기

내 코드의 관련 부분이다

"<foo>\n<bar />\n</foo>" 

그리고로 표시 할 :

<foo> 
    <bar/> 
</foo> 

나는 이것을 어떻게 좋은 방법으로 얻을 수 있습니까?

답변