Init
This commit is contained in:
commit
295625c70f
151 files changed
+10677
No files matched your search
@@ -0,0 +1,33 @@
|
||||
// lib/database/database_connection/connection_native.dart
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:drift/drift.dart';
|
||||
import 'package:drift/native.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:path/path.dart' as p;
|
||||
// sqlite3_flutter_libs и sqlite3 импортируются для возможной тонкой настройки,
|
||||
// но часто NativeDatabase справляется автоматически.
|
||||
// import 'package:sqlite3_flutter_libs/sqlite3_flutter_libs.dart';
|
||||
// import 'package:sqlite3/sqlite3.dart';
|
||||
|
||||
QueryExecutor connect() {
|
||||
print("Connecting to database using NativeDatabase (Lazy)");
|
||||
// Используем LazyDatabase для отложенной инициализации на нативных платформах
|
||||
return LazyDatabase(() async {
|
||||
// Получаем папку для хранения документов приложения
|
||||
final dbFolder = await getApplicationDocumentsDirectory();
|
||||
// Создаем путь к файлу 'db.sqlite' в этой папке
|
||||
final file = File(p.join(dbFolder.path, 'db.sqlite'));
|
||||
print("Database file path (Native): ${file.path}"); // Логируем путь для отладки
|
||||
|
||||
// Настройка библиотеки sqlite3 (обычно не требуется для Android/iOS/macOS с sqlite3_flutter_libs)
|
||||
// if (Platform.isWindows || Platform.isLinux) {
|
||||
// // Может потребоваться дополнительная настройка для Desktop
|
||||
// // await applyWorkaroundToOpenSqlite3Library();
|
||||
// }
|
||||
|
||||
// Используем NativeDatabase для открытия соединения
|
||||
// logStatements: true полезен для отладки SQL-запросов
|
||||
return NativeDatabase(file, logStatements: false);
|
||||
});
|
||||
}
|
||||
Reference in new issue
Block a user