Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM | e-Commerce | Accounting | Inventory | PoS | Project management | MRP | etc.
I have a binary field, and I want to allow the user to upload only zip files to it. I'm trying to do it this way:
source_file = fields.Binary('Source File', filters='*.zip')
But I've read that this only worked for the old GTK Client. Is there a great way to manage this on version 8?
I'm with the same problem and don't find a solution as simple as the one you mention. But there is a solution as i think simple enough : use the api.constrains. Here is my modus operandi:
1) I save the file's name
files = fields.Binary(string="Download Zip") filename = fields.Char()
<field name="filename" invisible="1" /> <field name="files" filename="filename" />
2) I use the api.constrains to verify the extension
@api.one @api.constrains('filename') def _check_filename(self): if self.files: if not self.filename: raise exceptions.ValidationError(_("There is no file")) else: # Check the file's extension tmp = self.filename.split('.') ext = tmp[len(tmp)-1] if ext != 'zip': raise exceptions.ValidationError(_("The file must be a zip file"))
I know, it's not a very beautiful way to do it but it's an alternative solution to your problem.
Hope that help you.
About This Community
This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.Register
Odoo Training Center
Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.Test it now
|Asked: 3/16/15, 6:45 AM|
|Seen: 1353 times|
|Last updated: 3/25/15, 1:18 AM|