Skip to content

Commit

Permalink
Merge PR #378 into 17.0
Browse files Browse the repository at this point in the history
Signed-off-by lmignon
  • Loading branch information
OCA-git-bot committed Nov 10, 2024
2 parents e27899e + 8db7453 commit 79d14ba
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions fs_attachment/models/ir_attachment.py
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,9 @@ def _get_datas_related_values(self, data, mimetype):
"db_datas": data,
}
return values
return super()._get_datas_related_values(data, mimetype)
return super(
IrAttachment, self.with_context(mimetype=mimetype)
)._get_datas_related_values(data, mimetype)

###########################################################
# Odoo methods that we override to use the object storage #
Expand Down Expand Up @@ -377,6 +379,14 @@ def _storage_file_read(self, fname: str) -> bytes | None:
)
return b""

def _storage_write_option(self, fs):
_fs = fs
while _fs:
if hasattr(_fs, "s3"):
return {"ContentType": self._context["mimetype"]}
_fs = getattr(_fs, "fs", None)
return {}

@api.model
def _storage_file_write(self, bin_data: bytes) -> str:
"""Write the file to the filesystem storage"""
Expand All @@ -387,7 +397,8 @@ def _storage_file_write(self, bin_data: bytes) -> str:
if not fs.exists(dirname):
fs.makedirs(dirname)
fname = f"{storage}://{path}"
with fs.open(path, "wb") as f:
kwargs = self._storage_write_option(fs)
with fs.open(path, "wb", **kwargs) as f:
f.write(bin_data)
self._fs_mark_for_gc(fname)
return fname
Expand Down

0 comments on commit 79d14ba

Please sign in to comment.