This question has been flagged
2 Replies
19664 Views


I'm working on the survey module, especially on the survey_result.xml file containing all the templates results. I want to change the whole result_matrix template code (the result displayed for all matrix question type) using inheritance. 

So I used :
 

<template name="matrix_result_extended" inherit_id="survey.result_ matrix">
<xpath expr="." position="replace">
<!-- custom code here to replace all template code -->
</xpath>
</template>


But it seems that it doesn't work, because the parent result_matrix is not recognized by the qweb engine anymore when trying to render the survey results.

Is there a clean way to replace all code template by a completely new one ? 
 

Avatar
Discard
Best Answer

You redefine the full template with the same id="survey.result_matrix" and without inherit_id  (and with depends in __openerp__.py)

Avatar
Discard
Author

And I do this redefinition on the survey module, not on a custom module ?

Author

I think you mean redefine on a custom module "survey_extension" for example, with the same id="survey.result_matrix", and on the survey module __openerp__.py file add "survey_extension" on depends option. Is that correct ?

Yes, I mean custom module.

Best Answer

This works, but it's distructive.

If you will uninstall your custom module, the default report will remain the one you've changed, and this is not ok in all scenarios

Avatar
Discard