2021-08-12 03:39:01 +00:00
|
|
|
# Angel3 ORM Service
|
|
|
|
|
2024-06-23 10:08:12 +00:00
|
|
|
![Pub Version (including pre-releases)](https://img.shields.io/pub/v/angel3_orm_service?include_prereleases)
|
2021-06-18 10:29:49 +00:00
|
|
|
[![Null Safety](https://img.shields.io/badge/null-safety-brightgreen)](https://dart.dev/null-safety)
|
2024-07-07 15:02:49 +00:00
|
|
|
[![Discord](https://img.shields.io/discord/1060322353214660698)](https://discord.gg/3X6bxTUdCM)
|
2023-12-25 03:45:10 +00:00
|
|
|
[![License](https://img.shields.io/github/license/dart-backend/angel)](https://github.com/dart-backend/angel/tree/master/packages/orm/angel_orm_service/LICENSE)
|
2019-04-20 19:45:42 +00:00
|
|
|
|
2021-08-12 03:39:01 +00:00
|
|
|
Service implementation that wraps over Angel3 ORM Query classes.
|
2019-04-20 19:45:42 +00:00
|
|
|
|
2019-04-20 21:34:14 +00:00
|
|
|
## Installation
|
2021-08-12 03:39:01 +00:00
|
|
|
|
2019-04-20 21:34:14 +00:00
|
|
|
In your `pubspec.yaml`:
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
dependencies:
|
2023-12-24 16:10:10 +00:00
|
|
|
angel3_orm_service: ^8.0.0
|
2019-04-20 21:34:14 +00:00
|
|
|
```
|
|
|
|
|
2019-04-20 19:45:42 +00:00
|
|
|
## Usage
|
2021-08-12 03:39:01 +00:00
|
|
|
|
2019-04-20 19:45:42 +00:00
|
|
|
Brief snippet (check `example/main.dart` for setup, etc.):
|
|
|
|
|
|
|
|
```dart
|
|
|
|
// Create an ORM-backed service.
|
|
|
|
var todoService = OrmService<int, Todo, TodoQuery>(
|
|
|
|
executor, () => TodoQuery(),
|
|
|
|
readData: (req, res) => todoSerializer.decode(req.bodyAsMap));
|
|
|
|
|
|
|
|
// Because we provided `readData`, the todoService can face the Web.
|
|
|
|
// **IMPORTANT: Providing the type arguments is an ABSOLUTE MUST, if your
|
|
|
|
// model has `int` ID's (this is the case when using `angel_orm_generator` and `Model`).
|
|
|
|
// **
|
|
|
|
app.use<int, Todo, OrmService<int, Todo, TodoQuery>>(
|
|
|
|
'/api/todos', todoService);
|
2021-08-12 03:39:01 +00:00
|
|
|
```
|