Ich entwickle eine Spiel-App und verwende Symfony 2.0. Ich habe viele AJAX-Anfragen an das Backend. Weitere Antworten sind die Konvertierung von Entitäten in JSON. Beispielsweise:
class DefaultController extends Controller
{
public function launchAction()
{
$user = $this->getDoctrine()
->getRepository('UserBundle:User')
->find($id);
// encode user to json format
$userDataAsJson = $this->encodeUserDataToJson($user);
return array(
'userDataAsJson' => $userDataAsJson
);
}
private function encodeUserDataToJson(User $user)
{
$userData = array(
'id' => $user->getId(),
'profile' => array(
'nickname' => $user->getProfile()->getNickname()
)
);
$jsonEncoder = new JsonEncoder();
return $jsonEncoder->encode($userData, $format = 'json');
}
}
Und alle meine Controller tun dasselbe: Holen Sie sich eine Entität und codieren Sie einige ihrer Felder in JSON. Ich weiß, dass ich Normalisierer verwenden und alle Berechtigungen codieren kann. Was aber, wenn eine Entität Links zu einer anderen Entität gewechselt hat? Oder ist das Entitätsdiagramm sehr groß? Hast du irgendwelche Vorschläge?
Ich denke über ein Codierungsschema für Entitäten nach ... oder über das Verwenden NormalizableInterface
, um das Radfahren zu vermeiden ..,