Обновление README.md

This commit is contained in:
2025-04-17 00:08:42 +04:00
parent bfe52cff9a
commit 0353ca732f
+35
View File
@@ -2,6 +2,17 @@
Программа обработки данных для игры Pathfinder 2e для создания БД для дальнейшего использования на сайте локализации Pf2e.
## Начало работы
- Склонируйте репозиторий и войдите в папку `Pf2eDataScrapper`.
- Создайте файл `.env` и добавьте в него содержимое из файла `.env.example`. Измените содержащиеся поля:
- `DATA_DIR` - путь к папке для распаковки репозиториев обрабатываемых данных;
- `OUTPUT_DIR` - путь к месту сохранения схем;
- `DATABASE_CONNECTION` - строка подключения к БД (только PostreSQL).
- Для создания структуры БД в командной строке запустите `dotnet ef database update`.
- Проект готов к работе.
## Общая структура
### `SchemaBuilder`
@@ -17,6 +28,30 @@ data = JObject.Parse(reader.ReadToEnd()); // Загрузка данных
schema.AddValue(data); // Добавление данных
```
### `Model`
Набор классов модели ORM EntityFramework.
Класс-контекст `Pf2eDbContext` разделён на 2 файла:
- в `Pf2eDbContext.cs` находится набор таблиц и конфигурация БД,
- в `Pf2eDbContextModel.cs` находится Fluent API описание связей в модели.
Для удобства модель разбита на несколько папок-пространст имён:
- `Base` - здесь описан класс `Entity`, который является корнем всех связей и описаний. В этой таблице находятся общие характеристики объектов: название, описание, тип, а так же ссылки на общие элементы: указание источников и трейтов - всё это в пространстве имён
- `Common` содержит общее классы на которые могут ссылаться разные типа.
- `Enum` содержит описание всех перечислений, использующихся в модели.
- `Structure` содержит все основные типы, которые связаны 1-к-1 с `Entity` (для указания этого используется интерфейс `IEntity`).
### `Migrations`
Миграции БД, генерируются в автомотическом режиме.
### `Importers`
Классы загрузки и обработки данных.
# TODO
- Добавление экипировки
- Добавление бестиария