Skip to content

Commit c752dd6

Browse files
committed
code challenge 2 solution
1 parent acdbb88 commit c752dd6

21 files changed

+819
-646
lines changed

CODING-CHALLENGE-3.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# RESTful Webservices in Symfony
2+
3+
## Coding Challenge 3 - Pagination
4+
5+
### Tasks
6+
7+
- add pagination to your workshop and attendee list actions using a `page` and `size` query parameter
8+
9+
### Solution
10+
11+
- introduce query params `page` and `size` in your ListControllers
12+
- use the Doctrine Paginator to paginate the workshop and attendee lists
13+
- implement a `PaginatedCollection` object and add the properties `items`, `total` and `count`
14+
- implement a `PaginatedCollectionFactory` to encapsulate your pagination logic

composer.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@
88
"ext-ctype": "*",
99
"ext-iconv": "*",
1010
"composer/package-versions-deprecated": "1.11.99.4",
11+
"doctrine/annotations": "^1.0",
1112
"doctrine/doctrine-bundle": "^2.5",
1213
"doctrine/doctrine-migrations-bundle": "^3.2",
1314
"doctrine/orm": "^2.10",
15+
"phpdocumentor/reflection-docblock": "^5.3",
1416
"ramsey/uuid": "^4.2",
1517
"ramsey/uuid-doctrine": "^1.8",
1618
"sensio/framework-extra-bundle": "^6.2",
@@ -19,8 +21,11 @@
1921
"symfony/dotenv": "5.4.*",
2022
"symfony/flex": "^1.17",
2123
"symfony/framework-bundle": "5.4.*",
24+
"symfony/property-access": "5.4.*",
25+
"symfony/property-info": "5.4.*",
2226
"symfony/proxy-manager-bridge": "5.4.*",
2327
"symfony/runtime": "5.4.*",
28+
"symfony/serializer": "5.4.*",
2429
"symfony/yaml": "5.4.*",
2530
"webmozart/assert": "^1.10"
2631
},

0 commit comments

Comments
 (0)