2017-07-14 14 views
5

htmlをツリービューで表示できますか?例えばツリービューodooでhtmlを表示

は、私は、文字列<強い> MY STRING </strong>の

に強い追加利用ウィジェット= "HTML" が、強力なタグが表示されてみてください!

あなたは以下のようにメソッドの_format()をオーバーライドする必要があり、リストビューでHTMLを有効にするの.py

@api.depends('name') 
def _get_html(self): 
    self.html_text = "<strong>" + str(self.name) + "</strong>" 

    html_text = fields.Char(compute='_get_html') 

の.xml

<field name="html_text"/> 
+2

あなたは、問題のあなたのツリービューを追加していただけますか? –

+2

@VikiChavada私のサンプルを追加します! –

答えて

7

。(OdooのV10用)

JS

odoo.define('html_in_tree_field.web_ext', function (require) { 
    "use strict"; 
    var Listview = require('web.ListView'); 
    var formats = require('web.formats'); 

    Listview.Column.include({ 
     _format: function (row_data, options) { 
     // Removed _.escape() function to display html content. 
     // Before : return _.escape(formats.format_value(row_data[this.id].value, this, options.value_if_empty)); 
     return formats.format_value(row_data[this.id].value, this, options.value_if_empty); 
     } 
    }); 
}); 

上記のJSに追加するXML。

<?xml version="1.0" encoding="utf-8"?> 
<odoo> 
    <template id="assets_ext" inherit_id="web.assets_backend"> 
     <xpath expr="." position="inside"> 
      <script type="text/javascript" src="/html_in_tree_field/static/src/js/web_ext.js"></script> 
     </xpath> 
    </template> 
</odoo> 

__manifest__.py

{ 
... 
... 
'data': [ 
     ... 
     'views/above_xml_filename.xml', 
    ], 
.... 
} 
関連する問題