python [上传文件Controller] Odoo上传文件Controller #Odoo
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python [上传文件Controller] Odoo上传文件Controller #Odoo相关的知识,希望对你有一定的参考价值。
@http.route('/api/v1/mro/upload_file', type='http', auth="user", method=['POST'], website=True, csrf=False)
def upload_requirement_file(self, ufile, res_id=0, res_model, **kwargs):
file = ufile
if file:
# 附件模型
Attachment = request.env['ir.attachment']
# 创建附件
attach = Attachment.create({
'name': file.filename,
'res_model': res_model,
'res_id': res_id,
'datas': base64.encodestring(ufile.read()),
'datas_fname': file.filename,
'public': True
})
if attach:
base_url = request.env['ir.config_parameter'].sudo().get_param('web.base.url')
return request.make_response(json.dumps({
'success': True,
'msg': u'附件上传成功',
'id': attach.id,
'url': '{}/web/content?model=ir.attachment&field=datas&id={}&download=true&filename_field=datas_fname'.format(
base_url, attach.id),
'local_url': attach.local_url
}))
else:
return request.make_response(json.dumps({
'success': True,
'msg': u'附件上传失败'
}))
return request.make_response(json.dumps({
'success': False,
'msg': u'非法请求!'
}))
以上是关于python [上传文件Controller] Odoo上传文件Controller #Odoo的主要内容,如果未能解决你的问题,请参考以下文章
使用FormData进行Ajax请求上传文件到controller层的实现
tp框架文件上传
ThinkPhp框架:文件上传
tp 框架 -文件上传
文件上传
ThinkPhp框架:文件上传