odoo 附件上传文件服务器,odoo附件store_fname,并已知附件filestore地址,其他平台如何直接获取附件源文件...

Odoo中的附件通过ir.attachment模块进行存储,关键字段如`datas_fname`表示文件名,`store_fname`指示文件在filestore的地址。要获取附件源文件,需结合`store_fname`和filestore路径,通过base64解码`datas`字段的内容。此过程涉及数据库交互和文件操作。
摘要由CSDN通过智能技术生成

查阅资料,以及源代码得知odoo中的附件统一使用ir.attachment这个模块来存储,以下为ir.attachment的字段定义。datas存储具体数据吗,但在数据库中是看不到这一字段。目前已经拿到store_fname,并已知附件filestore地址。该如何通过外部直接获取附件源文件(目前过程中肯定需要base64解码)

_columns = {

'name': fields.char('Attachment Name', required=True),

'datas_fname': fields.char('File Name'),

'description': fields.text('Description'),

'res_name': fields.function(_name_get_resname, type='char', string='Resource Name', store=True),

'res_model': fields.char('Resource Model', readonly=True, help="The database object this attachment will be attached to"),

'res_id': fields.integer('Resource ID', readonly=True, help="The record id this is attached to"),

'create_date': fields.datetime('Date Created', readonly=True),

'create_uid': fields.many2one('res.users', 'Owner', readonly=True),

'company_id': fields.many2one('res.company', 'Company', change_default=True),

'type': fields.selection( [ ('url','URL'), ('binary','Binary'), ],

'Type', help="Binary File or URL", required=True, change_default=True),

'url': fields.char('Url', size=1024),

# al: We keep shitty field names for backward compatibility with document

'datas': fields.function(_data_get, fnct_inv=_data_set, string='File Content', type="binary", nodrop=True),

'store_fname': fields.char('Stored Filename'),

'db_datas': fields.binary('Database Data'),

'file_size': fields.integer('File Size'),

}

bV0aBz?w=2064&h=120

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值