Ir al contenido
Menú
Se marcó esta pregunta
7 Respuestas
12455 Vistas

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
Descartar
Autor

the problem is not to print the Html field

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

as the example

Mejor respuesta

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
Descartar
Autor

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

Mejor respuesta

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
Descartar
Autor

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

Mejor respuesta

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
Descartar
Autor

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

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

Publicaciones relacionadas Respuestas Vistas Actividad
2
nov 22
3023
2
may 21
5172
1
sept 24
4151
0
ene 24
1413
0
ene 24
1099