Как мне упаковать базу данных Sqlite3 с моим пакетом Python3 fbs? - PullRequest
0 голосов
/ 01 октября 2019

Я создаю приложение Python с использованием FBS, но часть его опирается на базу данных SQLite3. У меня есть код для создания этой базы данных, если он не находит это, используя блок try-catch.

Когда я пытаюсь запустить его после компиляции, он не только не может найти существующий файл SQLite3, но ине буду создавать это. Он не отображает никаких сообщений об ошибках.

Я попытался создать файл, если он не существует, используя этот код:

try:
    self.connection = sqlite3.connect(path)
    self.cursor = self.connection.cursor()
except:
    if not os.path.exists(path):
        # Try and make the .config directory
        try:
            os.makedirs(".config")
        except OSError as e:
            if e.errno != errno.EEXIST:
                raise

        # Create the datastore, and close it
        f = open(path, "w+")
        f.close()
        # And try connect to database again
        return self.__connect(path)
    else:
        print(f"No database exists, and could not create one.\nPlease create file in app directory called: {path}\nThen restart application.")
        raise

Код работает найти в dev, но как толькоЯ компилирую его в приложение Mac, оно отказывается найти или создать базу данных.

1 Ответ

0 голосов
/ 01 октября 2019

Fixed. Если у кого-то есть подобная проблема, пожалуйста, используйте встроенный метод appctxt.get_resource(file_path).

...