muk-it / muk_dms

MuK Document Management System
GNU Lesser General Public License v3.0
91 stars 144 forks source link

cannot delete directory with files containing special characters #93

Closed pkr123dw closed 5 years ago

pkr123dw commented 5 years ago

With Odoo version 11,

Odoo Server Error Traceback (most recent call last): File "/odoo/odoo-server/odoo/http.py", line 650, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/odoo/odoo-server/odoo/http.py", line 310, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "/odoo/odoo-server/odoo/tools/pycompat.py", line 87, in reraise raise value File "/odoo/odoo-server/odoo/http.py", line 692, in dispatch result = self._call_function(self.params) File "/odoo/odoo-server/odoo/http.py", line 342, in _call_function return checked_call(self.db, *args, *kwargs) File "/odoo/odoo-server/odoo/service/model.py", line 97, in wrapper return f(dbname, args, kwargs) File "/odoo/odoo-server/odoo/http.py", line 335, in checked_call result = self.endpoint(*a, kw) File "/odoo/odoo-server/odoo/http.py", line 936, in call return self.method(*args, *kw) File "/odoo/odoo-server/odoo/http.py", line 515, in response_wrap response = f(args, kw) File "/odoo/odoo-server/addons/web/controllers/main.py", line 934, in call_kw return self._call_kw(model, method, args, kwargs) File "/odoo/odoo-server/addons/web/controllers/main.py", line 926, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 689, in call_kw return call_kw_multi(method, model, args, kwargs) File "/odoo/odoo-server/odoo/api.py", line 680, in call_kw_multi result = method(recs, *args, *kwargs) File "/odoo/x/muk_base/muk_security/models/locking.py", line 230, in unlink self._before_unlink_operation(operation) File "/odoo/x/muk_dms/muk_dms/models/dms_directory.py", line 483, in _before_unlink_operation record.files.with_context(operation=operation).unlink() File "/odoo/x/muk_base/muk_security/models/locking.py", line 234, in unlink result = super(BaseModelLocking, self.with_context(operation=process_operation)).unlink() File "/odoo/x/muk_base/muk_utils/models/model.py", line 195, in unlink self._after_unlink(result, info, infos) File "/odoo/x/muk_dms/muk_dms_attachment/models/dms_file.py", line 146, in _after_unlink super(AttachmentFile, self)._after_unlink(result, info, infos, largs, **kwargs) File "/odoo/x/muk_dms/muk_dms/models/dms_file.py", line 433, in _after_unlink self.env[tuple[0]].sudo().browse(list(filter(None, tuple[1]))).unlink() File "/odoo/x/muk_dms/muk_dms_file/models/dms_data_system.py", line 161, in unlink self._delete_file(path) File "/odoo/x/muk_dms/muk_dms_file/models/dms_data_system.py", line 246, in _delete_file os.remove(file_path) UnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 55: ordinal not in range(128)

Kerrim- commented 5 years ago

Hi,

can you update the module and retry it.

https://github.com/muk-it/muk_dms/commit/0469e0f362678a7df4ed6e5ecbac2856b3caf381

Regards, Kerrim