Как установить tinydb в каталог приложений

Я создаю приложение, используя Python и KIVY, используя from tinydb import TinyD, Query импортировать tinydb модуль. Это прекрасно работает при тестировании моего кода на python и kivy. После использования buildozer для создания apk и отладки, он говорит, что он завис из-за ImportError: no module named tinydb, Я пытался добавить tinydb как требование в buildozer.spec, но это не исправило это. Я уверен, что мне нужно установить tinydb в моем каталоге приложений, таким образом, пакет загружается и включается в мой APK. Однако я не совсем уверен, как это сделать. Например, я установил графовый модуль из Kivy Garden, используя garden install --app graph, Если у кого-то есть предложения, это было бы здорово!

1 ответ

Решение

Я никогда не использовал buildover, но поскольку tinydb - это крошечная чистая библиотека Python, вы, вероятно, можете загрузить и включить библиотеку tinydb непосредственно в свой проект и импортировать ее локально.

Я использовал следующую структуру каталогов

│   app.py
├───db
│       db.json
└───tinydb
    │   database.py
    │   middlewares.py
    │   operations.py
    │   queries.py
    │   storages.py
    │   utils.py
    │   __init__.py

И основной скрипт app.py

from tinydb import TinyDB, Query
import os

dirname = os.path.dirname(os.path.abspath(__file__))
db = TinyDB(os.path.join(dirname, 'db', 'db.json'))
Другие вопросы по тегам