Tôi mới dùng Doctrine, mongo và thiết lập ODM và trong khi chơi với thiết lập này trong ZF1 Tôi đang cố gắng tái tạo một tham chiếu đơn giản hạn chế. Đây là tình huống và muốn một số lời khuyên về cách đạt được điều này.Học thuyết ODM MongoDB - Tái tạo một Tham chiếu Một đến Nhiều với Hạn chế
Đây là một user- đơn giản> vai trò lập bản đồ, vì vậy trong một tình huống sql tôi sẽ có bảng như sau:
Users - id - name - role_id Roles - id - name
Sau đó, một ràng buộc khoá ngoại sẽ được đặt trên những người sử dụng ROLE_ID để ánh xạ vai trò ID. Và khi xóa một vai trò, một ràng buộc khoá ngoại sẽ được kích hoạt để dừng hoạt động.
Làm cách nào để đạt được cùng một mục tiêu trong Doctrines MongoDB ODM?
Cho đến nay tôi đã chơi với các loại chú thích khác nhau trên thực thể tài khoản bao gồm @ReferenceOne @ReferenceMany với các tùy chọn khác nhau thác ...
Sự lựa chọn trái với tôi bây giờ là thực hiện @PreUpdate, @PreRemove sự kiện vòng đời trên thực thể 'vai trò' và sau đó kiểm tra xem không có người dùng nào đang sử dụng vai trò, nếu họ đang trên cập nhật, thay đổi tham chiếu để khớp hoặc loại bỏ sẽ loại bỏ một ngoại lệ.
Tôi có ở đây hoặc bị mất không?
Cảm ơn bạn,
Si
Câu trả lời hay, cảm ơn bạn rất nhiều! –
Không sao cả. Tôi đã trải qua cùng một nỗi đau như bạn khi bắt đầu với Doctrine. Thật tuyệt vời một khi bạn nhận được hang của nó mặc dù! –
Tôi nghĩ rằng nó thực sự tốt cho đến nay. Nó làm cho việc xây dựng một tầng dịch vụ trên đầu dễ dàng hơn rất nhiều. Một điểm nhỏ là tôi Roles :: hasUsers() sẽ trả về! $ This-> users-> isEmpty(); để đảo ngược boolean. Cảm ơn rất nhiều vì sự giúp đỡ của bạn và điều này hoạt động như một giấc mơ. –