2012-04-13 8 views
0

in meiner Form Ich habe ein Datei-Upload-Feld, wo der Benutzer seinen Avatar hochladen kann. Offensichtlich sollte er es ändern können, wenn er es möchte.symfony2 forms - überprüfen, ob der Benutzer seine hochgeladene Datei ändern möchte

Aber irgendwie, wenn ich ein anderes Bild hochladen möchte, erkennt symfony2 das nicht.

I verwendet LifecycleCallbacks für das Entity Dokument wie hier beschrieben: http://symfony.com/doc/current/cookbook/doctrine/file_uploads.html#using-lifecycle-callbacks

jemand so etwas getan hat und kann mir sagen, wie, um zu überprüfen, ob der Benutzer eine andere Datei laden will?

Antwort

1

Sie können den md5/sha-Hash des neu hochgeladenen Bildes und das aktuelle Bild in @PreUpdate Rückruf vergleichen.

+0

Okay ... aber wie kann ich von dort auf die neue und die alte Datei zugreifen? Ich habe nur eine Datei in dieser Klasseninstanz, wenn ich mich nicht irre ... –

+1

Eigentlich können Sie es in 'Upload()' Methode der 'Document/User' Klasse tun. Vorausgesetzt, Sie haben das Benutzerobjekt bereits vor dem Aufruf geladen 'bindRequest'. –

+0

ah ... ich habe nicht die -> upload() Methode im Controller aufgerufen. Es macht jetzt die Überprüfung von selbst. Vielen Dank! –