Ich bin mit Symfony 3 und Lehre und habe Entitäten und Beziehungen Setup und habe meine Controller Rückkehr:Wie passe ich Daten an, die zurückgegeben werden, wenn Doctrine ORM verwendet wird?
{
"retrieved": "2016-06-30T16:47:49+0200",
"currentPage": "1",
"totalItems": "3",
"itemsPerPage": "50",
"tasks": [
{
"id": 1,
"tasktitle": "This is the first task",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\\",
"duedate": "2016-12-25T23:59:59+0100",
"dateadded": "2016-06-20T16:43:06+0200",
"projectid": {
"id": 1,
"name": "PM Tool",
"dateadded": "2016-06-20T16:43:06+0200",
"createdbyuserid": {
"id": 1,
"firstname": "test",
"lastname": "test"
},
"userid": []
},
"taskstatus": {
"id": 1,
"taskstatus": "Not Started"
},
"priority": {
"id": 1,
"priority": "Urgent"
}
},
{
"id": 2,
"tasktitle": "Code this beast",
"description": "This project is going to be sweet.",
"duedate": "2016-12-26T23:59:59+0100",
"dateadded": "2016-06-20T16:43:06+0200",
"projectid": {
"id": 1,
"name": "PM Tool",
"dateadded": "2016-06-20T16:43:06+0200",
"createdbyuserid": {
"id": 1,
"firstname": "test",
"lastname": "test"
},
"userid": []
},
"taskstatus": {
"id": 9,
"taskstatus": "Completed"
},
"priority": {
"id": 3,
"priority": "Medium"
}
}
]
}
jedoch auf diese Weise mehr Informationen als ich für mein Front-End benötigen. Ich brauche nicht den gesamten Datensatz aus den dazugehörigen Tabellen und wäre so etwas wie dies mag:
{
"retrieved": "2016-06-30T16:47:49+0200",
"currentPage": "1",
"totalItems": "3",
"itemsPerPage": "50",
"tasks": [
{
"id": 1,
"tasktitle": "This is the first task",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\\",
"duedate": "2016-12-25T23:59:59+0100",
"dateadded": "2016-06-20T16:43:06+0200",
"projectname": "PM Tool",
"taskstatus": "Not Started",
"priority": "Urgent"
},
{
"id": 2,
"tasktitle": "Code this beast",
"description": "This project is going to be sweet.",
"duedate": "2016-12-26T23:59:59+0100",
"dateadded": "2016-06-20T16:43:06+0200",
"projectid": "PM Tool",
"taskstatus": "Completed"
"priority": "Medium"
}
]
}
Könnte jemand mir helfen, meinen Kopf zu wickeln um die Symfony Art und Weise, dies zu tun?
Was gibt diesen JSON-Code zurück? Oder ist das nur ein Dump() im Zweig? –
$ tasks = $ this-> getDoctrine() -> getRepository ('AppBundle: Task') -> findBy ( array(), array ('id' => 'ASC'), // sortieren nach $ count , ($ page - 1) * $ count // offset ); $ tasks = $ query-> getResult(); $ data = [ 'abgerufen' => $ Datum-> Format ('Ymd \ TH: i: sO'), 'current' => $ Seite, 'totalItems' => $ total, ‚ItemsPerPage '=> $ count, ' Aufgaben '=> $ Aufgaben ]; $ view-> setData ($ Daten) -> setStatusCode (200); zurück $ view; – SirM
Wenn Sie mehr Daten haben, als Sie brauchen, dann erstellen Sie einfach Ihr eigenes Array und transformieren Sie es in json. Und niemanden beleidigen, außer Symfony, der angeblich eine so große Gemeinschaft von Unterstützern, Experten und so weiter hat, die sicherlich schon einmal ein ähnliches Problem oder ähnliches hatten, warum kann dann niemand diese scheinbar einfache Frage beantworten? Ich habe eine Frage 3 mal auf 3 verschiedene Arten ohne direkte Antwort gestellt. – pogeybait