Метод open
Метод open применяется к объекту
ResourceManager и возвращает файловый
объект для указанного ресурса. Первым параметром
передаётся путь к файлу относительно директории
ресурсов. Метод используется внутри плагинов и
приложений Bottle для доступа к статическим
файлам, шаблонам и другим данным, поставляемым
вместе с пакетом.
Синтаксис
resource_manager.open(path)
Пример
Давайте откроем файл ресурса и прочитаем его содержимое:
from bottle import Bottle, ResourceManager
app = Bottle()
rm = ResourceManager()
rm.add_path('./resources')
with rm.open('data.txt') as f:
res = f.read()
print(res)
Результат выполнения кода:
b'abcde'
Пример
Давайте откроем файл из списка путей ресурсов и выведем его содержимое как строку:
from bottle import Bottle, ResourceManager
app = Bottle()
rm = ResourceManager()
rm.add_path('./resources')
with rm.open('article.txt') as f:
res = f.read().decode('utf-8')
print(res)
Результат выполнения кода:
"article"
Пример
Давайте используем open внутри
маршрута Bottle для отдачи содержимого ресурса:
from bottle import Bottle, ResourceManager
app = Bottle()
rm = ResourceManager()
rm.add_path('./resources')
@app.route('/')
def index():
with rm.open('hello.txt') as f:
return f.read().decode('utf-8')
Результат выполнения кода для адреса /:
hello
Смотрите также
-
класс
ResourceManager,
который управляет ресурсами приложения -
метод
add_path,
который добавляет путь поиска ресурсов -
метод
lookup,
который ищет ресурс по имени -
атрибут
path_list,
который хранит список путей поиска