2017-07-07 8 views
0

Symfony 2.8インストールでSonata Admin v3.2とSonata Media Bundleを正常に設定しました。あなたは、バックエンドが正常に動作して見ることができるように:Symfony Sonata管理バンドルとリッチHTMLエディタ

https://sonata-project.org/bundles/formatter/3-x/doc/reference/formatter_widget.html

私が設定:

enter image description here

豊かなHTMLは、私は適切なガイドを以下のように私はcontentプロパティをレンダリングしたいですガイドに従って段階的にSonataFormatterBundleを実行しますが、フィールドは正しく表示されません。これは私の設定です:

#Sonata with Symfony >= 2.6 
form_themes: 
    - 'SonataFormatterBundle:Form:formatter.html.twig' 

sonata_block: 
    default_contexts: [cms] 
    blocks: 
     # Enable the SonataAdminBundle block 
     sonata.admin.block.admin_list: 
      contexts: [admin] 
     # Your other blocks 
     sonata.formatter.block.formatter: 

sonata_formatter: 
ckeditor: 
    templates: 
     browser: 'SonataFormatterBundle:Ckeditor:browser.html.twig' 
     upload: 'SonataFormatterBundle:Ckeditor:upload.html.twig' 
default_formatter: richhtml 
formatters: 
    markdown: 
     service: sonata.formatter.text.markdown 
     extensions: 
      - sonata.formatter.twig.control_flow 
      - sonata.formatter.twig.gist 
      - sonata.media.formatter.twig 


    text: 
     service: sonata.formatter.text.text 
     extensions: 
      - sonata.formatter.twig.control_flow 
      - sonata.formatter.twig.gist 
      - sonata.media.formatter.twig 


    rawhtml: 
     service: sonata.formatter.text.raw 
     extensions: 
      - sonata.formatter.twig.control_flow 
      - sonata.formatter.twig.gist 
      - sonata.media.formatter.twig 


    richhtml: 
     service: sonata.formatter.text.raw 
     extensions: 
      - sonata.formatter.twig.control_flow 
      - sonata.formatter.twig.gist 
      - sonata.media.formatter.twig 


    twig: 
     service: sonata.formatter.text.twigengine 
     extensions: [] # Twig formatter cannot have extensions 

そして、これは私のPostAdminクラスです(私の上のスクリーンショットを参照)

protected function configureFormFields(FormMapper $formMapper) 
{ 
    $formMapper 
     ->add('title') 
     ->add('content', 'sonata_simple_formatter_type', array(
      'format' => 'richhtml', 
      'ckeditor_context' => 'default', // optional 
     )) 
     ->add('category') 
    ; 
} 

は、ページがエラーを示すのではなく、フィールドが通常のテキストエリアとしてとどまります。

+1

あなたのレイアウトテンプレートに必要なJavaScriptとCSSファイルを追加しましたか? https://sonata-project.org/bundles/formatter/3-x/doc/reference/formatter_widget.htmlを参照してください。ソナタ管理統合 – user2476294

+0

ねえ、ありがとう!あなたが提供したリンクからhtmlをコピーしました。おそらく私はマークアップで間違ったバージョンからコードを取得していたでしょう。あなたが答えを書くなら、私はそれを解決済みとしてマークします。 – StockBreak

答えて

1

ので、コメントの中に見ていない人のために:

SonataFormatterBundleでリッチテキストエディタには、いくつかのJavascriptおよびスタイルシートが動作する必要があります。 hereのように、管理レイアウトテンプレートに追加する必要があります。 (コードバージョン3.xため)のドキュメントからコピー

{% extends 'SonataAdminBundle::standard_layout.html.twig' %} 

{% block stylesheets %} 
{{ parent() }} 

<link rel="stylesheet" href="{{ asset('bundles/sonataformatter/markitup/skins/sonata/style.css') }}" type="text/css" media="all" /> 
<link rel="stylesheet" href="{{ asset('bundles/sonataformatter/markitup/sets/markdown/style.css') }}" type="text/css" media="all" /> 
<link rel="stylesheet" href="{{ asset('bundles/sonataformatter/markitup/sets/html/style.css') }}" type="text/css" media="all" /> 
<link rel="stylesheet" href="{{ asset('bundles/sonataformatter/markitup/sets/textile/style.css') }}" type="text/css" media="all" /> 
{% endblock %} 

{% block javascripts %} 
{{ parent() }} 

<script src="{{ asset('bundles/ivoryckeditor/ckeditor.js') }}" type="text/javascript"></script> 
<script src="{{ asset('bundles/sonataformatter/vendor/markitup-markitup/markitup/jquery.markitup.js') }}" type="text/javascript"></script> 
<script src="{{ asset('bundles/sonataformatter/markitup/sets/markdown/set.js') }}" type="text/javascript"></script> 
<script src="{{ asset('bundles/sonataformatter/markitup/sets/html/set.js') }}" type="text/javascript"></script> 
<script src="{{ asset('bundles/sonataformatter/markitup/sets/textile/set.js') }}" type="text/javascript"></script> 
{% endblock %} 
関連する問題