Skip to Content
Menu
This question has been flagged
7 Replies
12362 Views

I have created html field in the form view. Then user will add content in that field. The content will have some field variables of form view same as we declare in email template. Then user will print pdf report and that report should display values instead of the variables.


-Example Html field content :


Hello ${object.employee_id.name},

Your amount ${object.employee_id.amount}


____________________


- PDF Report should contain:


Hello Marks,

Your amount 500



How can I achieve this? Thanks in advance.

Avatar
Discard
Author

the problem is not to print the Html field

it is to display the variables that is in this field Html

as the example

Best Answer

hello Bouabaker, try this (odoo 11):


from odoo.addons.mail.models import mail_template

def method_name(self):

        converted_content = mail_template.mako_template_env.from_string(<your_html_content>).render({'object': object_value,})

        return converted_content

Avatar
Discard
Author

Hi Farhat, Thanks ,

but in XML What I put ?

In your report xml file, call the method with:

<t t-raw="method_name()"/>

Hi Farhat, Newbie here

What should i put in object_value ? Thanks

Best Answer

hello, your code is perfect but while you print the HTML field value into pdf report, print like below code.

<span t-raw="doc.your_html_field"/>


Avatar
Discard
Author

thanks Mitul , the problem is to print variable that are in this field HTML ,as the example as in the question

Best Answer

Hello Bouabaker,

If you want to print your HTML filed in Your PDF report you can add below code :

<span t-field="doc.yourhtmlfiled"/>

i think it's help you.

Avatar
Discard
Author

Hi Manish , the problem is not to print the Html field

it is to display the variables that is in this field Html

Related Posts Replies Views Activity
2
Nov 22
2936
2
May 21
5072
1
Sep 24
4026
0
Jan 24
1261
0
Jan 24
984