tôi phát hiện vấn đề này "nhờ" đến một ngoại lệ tôi nhận:Symfony 2 - tuôn ra trong postUpdate kiện preUpdate lửa
Catchable Fatal Error: Argument 3 passed to
Doctrine\ORM\Event\PreUpdateEventArgs::__construct()
must be an array, null given, called in
/.../vendor/doctrine/lib/Doctrine/ORM/UnitOfWork.php on line 804
and defined in
/.../vendor/doctrine/lib/Doctrine/ORM/Event/PreUpdateEventArgs.php line 28
tôi đang làm việc trên một dự án mà requieres một logic cụ thể:
Khi lĩnh vực order
trong thực thể book
được sửa đổi, tôi cần cập nhật trường books_order_modified_at
trong thực thể cha mẹ bookstore
(trường này cho phép tôi biết liệu thứ tự sách trong cửa hàng sách có thay đổi hay không).
Tôi quyết định làm điều đó trong trình xử lý sự kiện vì có nhiều nơi trong mã có thể thay đổi thứ tự sách.
tôi không tìm thấy bất cứ cách nào để cập nhật một thực thể có liên quan từ preUpdate
sự kiện, vì vậy tôi có một lĩnh vực riêng trong lớp nghe mà tôi sử dụng để nói lên sự kiện postUpdate
để cập nhật các bookstore
thực thể có liên quan.
Vấn đề của tôi là khi tôi làm như vậy sự kiện preUpdate
của thực thể book
được kích hoạt.
Khi tôi kiểm tra bộ thay đổi, nó chỉ chứa trường modified_at
, nhưng nó có cùng giá trị trước và sau.
Nếu ai đó có ý tưởng khác về cách giải quyết vấn đề - tuyệt vời.
Nếu không - bất kỳ ý tưởng nào làm cách nào tôi có thể ngăn sự kiện preUpdate
bị sa thải khi xả được gọi trong sự kiện postUpdate
?
Bạn đã tìm thấy giải pháp cho vấn đề này chưa? – ownking
Không, thực ra tôi đã giải quyết được vấn đề của mình bằng máy chủ thời gian thực (node.js) nên tôi không còn tìm kiếm giải pháp cho việc này nữa. Tuy nhiên, nếu bạn có bất kỳ, nó sẽ là thú vị để xem nó. Cảm ơn! – guyaloni