10.3. Модуль cargador¶
Модуль cerebro.cargador предоставляет доступ к файловому хранилищу Cargador.
Функции
download_file()
download_thumbnail()
file_name_form_hash()
is_connected()
is_local()
storage_host()
storage_path()
-
cerebro.cargador.
download_file
(hash, project_id)[исходный код]¶ Параметры: Ставит файл на закачку из удаленного файлового хранилища.
# Скачивание файла attach = cerebro.core.current_attachment() # получаем текущее вложение task = cerebro.core.current_task() # получаем текущую задачу, чтобы узнать идентификатор проекта if attach.is_link() != True: # проверяем, что вложение не является линком file_name = cerebro.cargador.file_name_form_hash(attach.file_hash()) # пробуем получить имя файла по хешу if file_name == '' or file_name == None: # если файла нет, пробуем его скачать cerebro.cargador.download_file(attach.file_hash(), task.project_id())
Примечание
Таким же образом можно скачать рецензию на файл. Для этого нужно у вложения вместо хеша файла получить хеш рецензии -
attach.review_hash()
. Для скачивания эскизов файла(уменшенных изображений) воспользуйтесь функциейcerebro.cargador.download_thumbnail()
.См.также
-
cerebro.cargador.
download_thumbnail
(hash, project_id)[исходный код]¶ Параметры: Ставит эскиз файла на закачку из удаленного файлового хранилища.
Примечание
Скачивание при помощи функции download_thumbnail, производится в специальную папку для эскизов, чтобы они не захламляли каталоги с основными файлами.
# Скачивание эскизов вложения attach = cerebro.core.current_attachment() # получаем текущее вложение task = cerebro.core.current_task() # получаем текущую задачу, чтобы узнать идентификатор проекта hashs = attach.thumbnail_hashs() # получаем список хешей эскизов файла for hash in hashs: # перебираем эскизы if hash != '' and hash != None: # если эскиз у файла существует file_name = cerebro.cargador.file_name_form_hash(hash) # пробуем получить имя эскиза файла по хешу if file_name == '' or file_name == None: # если эскиза нет, пробуем его скачать cerebro.cargador.download_thumbnail(hash, project_id)
См.также
-
cerebro.cargador.
file_name_form_hash
(hash)[исходный код]¶ Параметры: hash (string) – хеш файла. Результат: абсолютный путь до файла. Если файла в файловом хранилище нет, возвращается None. Тип результата: string attach = cerebro.core.current_attachment() # получаем текущее вложение file_name = cerebro.cargador.file_name_form_hash(attach.file_hash()) # пробуем получить имя файла по хешу print('Имя файла', file_name)
-
cerebro.cargador.
is_connected
()[исходный код]¶ Результат: True, если соединение c сервисом Cargador установлено. Тип результата: bool
-
cerebro.cargador.
is_local
()[исходный код]¶ Результат: True, если соединение установлено с локальным сервисом Cargador. False, если с сетевым. Тип результата: bool
-
cerebro.cargador.
storage_host
()[исходный код]¶ Результат: Адрес хоста на котором расположен подключенный сервис Cargador. Тип результата: string Если соединиение установлено с локальным сервисом Cargador, то вернется „localhost“.
-
cerebro.cargador.
storage_path
()[исходный код]¶ Результат: Путь до хранилища файлов. Тип результата: string