我需要一个表格,接受上传安卓.apk文件。然后用同样的名字下载它。
这里是我开始的地方
# model.py
class AppVersion(models.Model):
# ...
apk_file = fields.Binary('Apk file', filters='*.apk', required=True)但在odoo-14中,filters参数不再起作用。它接受所有类型文件。

上传完成后,download按钮会给我一个zip文件。

发布于 2021-09-07 13:54:40
经过一些源代码研究,我找到了解决方案:
问题1:仅接受.apk文件
将具有accepted_file_extensions属性的options属性添加到二进制字段。
问题2:下载同名文件
在模型中添加一个新的字符字段来保存文件名,并将其绑定到具有filename属性的二进制字段。别忘了将新字段添加到表单视图中(设置为invisible)
代码
# model
class AppVersion(models.Model):
# ...
apk_file = fields.Binary('Apk file', store=True, attachment=False, required=True)
apk_fname = fields.Char(string='File name')<!--form view-->
<field name="apk_file" widget="binary" options="{'accepted_file_extensions': '.apk'}" filename="apk_fname"/>
<field name="apk_fname" invisible="1"/>成功结果

https://stackoverflow.com/questions/69089525
复制相似问题