Данил
Вообще без разницы, где бд лежит
Alexey Filippov
Не, для локального решения вполне подходит
вот тут проблема, почему без разницы как я вижу исполнение. бд должна лежать по пути app.getpath('userData'), app.db) ?
Alexey Filippov
у каждый устройств это разный путь поэтому мы в енв должны динамически зашить?
Данил
Почему у тебя получается разный путь?)
Данил
Какую бд ты используешь?
Alexey Filippov
ну как минимум в пути разные PCName будут
Данил
ну как минимум в пути разные PCName будут
Ты хочешь использовать абсолютный путь?
Alexey Filippov
Данил
подскажи как еще можно
У тебя инициализирующий соединение файл лежит в архиве Из него просто сделай путь к вынесенному sqlite
Данил
Так, давай завтра к этому разговору вернёмся, я ща не в состоянии твой контекст принимать во внимание
Данил
Напишу в обед))
Alexey Filippov
Так, давай завтра к этому разговору вернёмся, я ща не в состоянии твой контекст принимать во внимание
1 вопрос у тебя тогда получилось подружить базу и призму и упаковать?
Данил
Нужно код смотреть, я уже не помню как у меня это работает)
🅰️nimeCoder
это скорее всего вопрос к сборщику
🅰️nimeCoder
в алекса vite вроде
Данил
И ci-cd
Данил
С призмой это сильно
Alexey Filippov
Ты ещё миграции не настраивал ахахха
ну миграцию можно вызвать через процесс же sdtrwrite я не пойму сам принцип как это должно работать посмотрел пару ссылок кто как делает кто-то просто копирует настроенный файл бд кто-то кидает схему и настраивает а кто-то использует url удаленной бд на сервере скорее всего как в этом гайде https://github.com/prisma/prisma/discussions/21027
Данил
Ну если приложение не должно быть автономным - то использовать удалённую базу самый простой вариант
Alexey Filippov
я вот так вызываю миграцию при запуске приложения
что-то типо того похоже призма идет нахер, typeorm тоже не захотела заводится - ругается на бесконечные деприкейты(
Идель Гатауллин
!спам
Идель Гатауллин
/report
Alexey Filippov
это скорее всего вопрос к сборщику
ку я по поводу все так же бд. решил буду писать нативно с сиквелом, но хочу узнать так правильно хранить бд и где
Alexey Filippov
это скорее всего вопрос к сборщику
имхо правильно будет если бд будет лежать в програм файлс папке с аппом, а не в C:\Users\AlexWebDev\AppData\Roaming\app
🅰️nimeCoder
хранить можно хоть в корене диска C: главный вопрос в том имеет ли привелегии пользователь на запись туда (а он может не иметь без админа)
🅰️nimeCoder
🅰️nimeCoder
По идее еще можно в ProgramData
🅰️nimeCoder
Ну я бы хранил в userData
сюда доступ точно есть
🅰️nimeCoder
По идее еще можно в ProgramData
сюда не уверен, там вроде глобальные данные
Alexey Filippov
Ну я бы хранил в userData
а разве Директория с установленной программой лучшим выбором?
Alexey Filippov
а видимо ProgramData это и есть тоже самое
Идель Гатауллин
!спам
Alexey Filippov
сюда не уверен, там вроде глобальные данные
еще вопрос) как ты общаешься с фронтом? через webContent.send() или ipcMain.on()
Alexey Filippov
аля только с фронта просишь данные
🅰️nimeCoder
🅰️nimeCoder
🅰️nimeCoder
🅰️nimeCoder
🅰️nimeCoder
Кто-то сталкивался может быть или возможно знает как это обойти (может сискалами или ещё как то) Как минимум на linux если окно являет frame: false то setPosition не позволяет вытащить его за пределы праймари монитора, все минусовые или экстра плюсы кординаты приравниваются к 0 (для отрицательных) или к максимальному размеру монитора (для положительных)
🅰️nimeCoder
Тобишь система (wm) не позволяет вытащить окно за пределы монитора ни на грамм. но через app drag zone оно отлично тащится в ручную
🅰️nimeCoder
Хоть убей не могу решить, ни setPosition, ни setBounds Делаешь frame: true - сразу все работает
Идель Гатауллин
!спам
Alexey Filippov
ебааааааааааааааааааа
Alexey Filippov
какой конченный электрон. просто один ходячий костыль. ничего нативно нормально не работает this.exePath = path.join(app.getAppPath(), 'resources', 'af-win-audio.exe').replace('app.asar', 'app.asar.unpacked') аж пришлось replace заюзасть от безысходности
🅰️nimeCoder
Думаю дело не в электроне) а в том что собирает в твоём конкретно случае, а вероятее его конфигурации Сборщик не может знать о внешних exe подключаемых динамически (да и не динамически в принципе тоже), так же как не может вставить их или нативное node файлы напрямую в выходной бандла js
Sadeq🆓
Hello friends, I want to create an app using Electron, NestJS, and Vite, but when I use the UserService in the ipc.service, it is undefined.
Sadeq🆓
Sadeq🆓
Sadeq🆓
Идель Гатауллин
!спам
Идель Гатауллин
!спам
Идель Гатауллин
Твари
Георгий
Твари
Может ему личку спамить 🤣
Michael
Уважаемый чат, А кто-нибудь подключал Swift код в нативный модуль для использования с электроном? Нужно обратиться к Swift-only API. Интересно, какие подводные камни меня могут тут ожидать
Данил
Но я тоже через replace делал
Данил
И доставал из асара пути
AlexeyFilippov
И доставал из асара пути
а как в схему путь прокидывал самое интересное
Данил
Приеду через часик и скажу)) Если не забуду
Идель Гатауллин
!спам
Идель Гатауллин
!спам
AlexeyFilippov
Остановился на таком варианте, вроде все ок Под капотом юзаю undici
Ку) я за советом Я хочу держать в бд 2 записи device.connected и !window.hide но при неожиданном закрытии мне надо свести их в БД к false вижу 2 реализации: 1. При запуске приложения скидывать на фолс или в обработчике will-quit или как то так менять вот можно ли надеяться на обработчик? Боюсь что есть такие то подводные камни где я не смогу записать в БД. аля альт ф4 или автомат а щитке
Grankeyl 🧸
может быть стоит сделать какую нибудь проверку пользователя на онлайн и к примеру если пользователь не онлайн какое-то время, то скидывать на фолс?
AlexeyFilippov
может быть стоит сделать какую нибудь проверку пользователя на онлайн и к примеру если пользователь не онлайн какое-то время, то скидывать на фолс?
у меня брокер сам сообщит если он покинул я немного про другое. к примеру пользователь к бд сейчас онлайн === в БД он true. сценарий резкое отключение пк в БД он останется true
AlexeyFilippov
в электроне есть пару обработчиков app.on("exit") вон что-то кажется ненадежно
Grankeyl 🧸
ну да на обработчиков не стоит полагаться
Grankeyl 🧸
ты используешь редис в проекте?
AlexeyFilippov
а что можно сделать с редисом