Доступ к внешним папкам fastapi
Я тут начал писать бэк для простенького сайта, но одной из целей была обработка папки и получения имен всех файлов. Все бы ничего, но при вызове функции из fastapi ничего не выдается(логично предположить, что не находит папку). Куда монтируется приложение при запуске и как мне получить доступ к той самой папке(она лежит в корне проекта, как и main.py)?
import uvicorn
from fastapi import FastAPI
import sqlite3
import os
app = FastAPI()
def add_pic(name, path, author):
conn = sqlite3.connect('db.sqlite')
cursor = conn.cursor()
cursor.execute("""INSERT INTO pics (name, path, author) VALUES (?, ?, ?)""", (name, path, author))
conn.commit()
cursor.close()
conn.close()
def get_pics():
dirname = 'skins/'
files = os.listdir(dirname)
print(files) # тут пустой список, но папка не пустая...
for el in files:
info = el.split('_')
add_pic(info[0], dirname + el, info[2])
@app.on_event("startup")
def startup():
conn = sqlite3.connect('db.sqlite')
cursor = conn.cursor()
cursor.execute("""CREATE TABLE IF NOT EXISTS pics (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
path TEXT,
author TEXT
)""")
cursor.close()
conn.close()
@app.get("api/get_pics")
def get_pics():
conn = sqlite3.connect('db.sqlite')
cursor = conn.cursor()
cursor.execute("""SELECT * FROM pics""")
pics = cursor.fetchall()
cursor.close()
conn.close()
print(pics)
uvicorn.run(app)