أنا أستخدم Symfony 3.4 ولدي شيء غريب يجب القيام به ، سأحاول أن أشرح بوضوح.
لدي كيان Website
و WebsiteFormType
، في هذا WebsiteFormType
لدي مستمع مثل: (في السطر الأول من buildForm()
في شكل النوع)
$builder->addEventSubscriber(new WebsiteListener();
في هذا المستمع ، أحتاج إلى التحقق من تحديث قيمة معينة عند إرسال النموذج ، وإذا تم تحديث هذه القيمة ، فأنا بحاجة إلى تكرار الكائن الخاص بي ، على سبيل المثال عندما أقوم بتحديث موقع الويب الخاص بي وأغير url
من عند http://xxx.xx
إلى http://yyyy.yy
أقوم بتكرار موقع الويب الأول لإنشاء الموقع الثاني بدلاً من تحديث الحقل url
.
أستخدم في هذا المستمع preSubmit
و postSubmit
.
مشكلتي هي ، عندما أقوم بتغيير عنوان url ، أحتاج إلى تغيير موقع الويب المرتبط بالنموذج.
إذا http://xxx.xx
هو WebsiteA و http://yyyy.yy
هو WebsiteB ، عندما أرسل WebsiteA وأغير عنوان url ، أحتاج إلى تغيير كائن موقع الويب المرتبط بالنموذج من WebsiteA إلى WebsiteB ....
هذا إذا قمت بإعادة التحقق من صحة النموذج بعد ذلك ، فهو WebsiteB الذي تم التحقق منه وليس WebsiteA.
لا أعرف إذا كنت تفهم مشكلتي :) شكرا!