2013-08-27 15 views
14

Tôi đang sử dụng "doctrine/doctrine-orm-module": "0.7.0" với ZF2.Cách tạo các thực thể từ lược đồ cơ sở dữ liệu bằng cách sử dụng doctrine-orm-module và zf2

Khi tôi tạo đối tượng, tôi thường chạy các lệnh sau để đồng bộ hóa và tạo cơ sở dữ liệu tự động theo các thực thể của tôi.

./vendor/bin/doctrine-module orm:validate-schema 
./vendor/bin/doctrine-module orm:schema-tool:create 

Có cách nào để thực hiện quy trình này ngược lại không? Tôi có nghĩa là, Tôi có thể tạo ra các thực thể từ cơ sở dữ liệu hiện có trong mysql?

+0

Hi, làm thế nào để tạo ra các thực thể trong hai của db khác nhau với orm ./vendor/bin/doctrine-module: schema-công cụ: tạo? Andrea – cwhisperer

Trả lời

30

Chúng tôi sử dụng một tập lệnh batch:

@ECHO OFF 

mkdir EXPORT 
call .\vendor\bin\doctrine-module orm:convert-mapping --force --from-database annotation ./EXPORT/ 
call .\vendor\bin\doctrine-module orm:generate-entities ./EXPORT/ --generate-annotations=true 

pause 

orm:convert-mappingorm:generate-entities có lẽ là những gì bạn đang tìm kiếm.

+2

Tùy chọn --force này đã giúp tôi tiết kiệm thêm năm giờ làm việc nữa. Hãy chắc chắn sử dụng nó. – xJoshWalker

21

Có một blog đẹp viết trên here

Chỉnh sửa này: Nó có thể được thực hiện bằng cách sử dụng các lệnh dưới đây:
1. convert-mapping (Bảng & Entity):

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:convert-mapping --namespace="Album\\Entity\\" --force --from-database annotation ./module/Album/src/ 


2. Tạo getter và setter

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:generate-entities ./module/Album/src/ --generate-annotations=true 
.210
+0

Vì câu trả lời này dựa trên một liên kết đến một trang web khác và trang web bên ngoài có thể biến mất vào một ngày sau đó, vui lòng đăng tất cả thông tin liên quan trong câu trả lời của bạn. –

+0

@RichardChristensen: Bạn nói đúng! & cũng được triển khai. Bạn có thể vui lòng upvote. Nó sẽ tốt cho tôi và cung cấp thông tin cho người khác nữa. – Thabung

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