方法一:
apply_rebuild_data = request.env['hw.import.template'].sudo().search([('name', '=', '重修申请模板')])
if apply_rebuild_data.exists():
return request.make_response(base64.b64decode(apply_rebuild_data.template), [('Content-Type', 'application/octet-stream'), (
'Content-Disposition', "attachment; filename=%s" % apply_rebuild_data.template_name.encode("utf-8").decode("latin1"))])
appapply_rebuild_data.template_name:文件名
apply_rebuild_data.template:文件数据
<record id="view_hw_import_template_form" model="ir.ui.view">
<field name="name">导入模板form视图</field>
<field name="model">hw.import.template</field>
<field name="arch" type="xml">
<form>
<sheet>
<group name="group_top">
<group>
<field name="name" required="1" />
<field name="template" required="1" filename="template_name"/>
<field name="template_name" invisible="1"/>
<field name="remarks"/>
</group>
<group>
</group>
</group>
</sheet>
</form>
</field>
</record>
方法二:
<a download='文件名.后缀名'>下载</a>
return http.send_file(BytesIO(base64.standard_b64decode(course_id.courseware)),
mimetype='application/pdf',
filename="lesson_%s.pdf" % lesson_id, as_attachment=False)
(BytesIO(base64.standard_b64decode(course_id.courseware)):文件数据
mimetype:文件类型
filename:文件名.后缀名
as_attachment:是否为附件,这里实现下载功能为False