2011-11-17 32 views
7

Công ty của tôi giữ quản trị cơ sở dữ liệu và phát triển trong một bộ phận riêng biệt và cho ứng dụng Symfony2 của tôi, tôi chỉ được phép tương tác với DB thông qua API dịch vụ. Điều này có nghĩa là tôi không thể sử dụng Doctrine ORM hoặc thậm chí là php pdo.Tạo đối tượng trong Symfony2 mà không cần Doctrine

Tôi về cơ bản sẽ phải xây dựng lớp trừu tượng của riêng mình. Tôi đã tìm kiếm trên internet cả ngày và chưa thấy bất kỳ điều gì về các phương pháp hay nhất để tạo lớp hủy bỏ thực thể cơ bản của riêng tôi cho Symfony2. Tôi thậm chí không thể tìm thấy thông tin về việc sử dụng bất cứ điều gì trừ Doctrine.

Có ai có bất kỳ đề xuất hoặc biết bất kỳ tài nguyên nào để thực hành tốt nhất về việc này cho symfony2 không?

Trả lời

6

Symfony độc lập với mô hình (Không có 'M' từ MVC). Lưu ý rằng Doctrine hoặc Propel là các dự án riêng biệt được tích hợp với Symfony. Chúng không phải là một phần của khung công tác.

Tôi nghĩ bạn chỉ nên triển khai thư viện ứng dụng cho API của bạn mà sẽ được tách khỏi khung công tác (thậm chí bạn có thể sử dụng nó trong các tập lệnh php thuần túy hoặc khung công tác khác).

Bước 2 sẽ tích hợp thư viện của bạn với Symfony. Nó có lẽ sẽ bao gồm việc tạo một gói và các định nghĩa dịch vụ thích hợp. Xem DoctrineBundle có thể cung cấp cho bạn một số ý tưởng.

+0

Cảm ơn các mẹo. Điều đó rất hữu ích. – Clint

6

tôi đã làm nó sau cách:

Vui lòng liên hệ với tôi để biết thêm chi tiết.

0

Dường như với tôi rằng API có thể được coi là một trình điều khiển DB khác. Tôi cho rằng học thuyết đó có thể được mở rộng để chấp nhận trình điều khiển db tùy chỉnh, nhưng tôi không chắc nó sẽ tốn bao nhiêu công sức và liệu API của bạn có cung cấp tất cả các chức năng cần thiết hay không. Những ưu điểm rõ ràng của cách tiếp cận này là bạn sẽ có thể sử dụng các tính năng của giáo lý giống như bạn có nếu bạn có quyền truy cập PDO.

Các vấn đề liên quan