symfony根據數據庫生成實體
- 2019-07-02 17:18:00
- CJL 原創
- 3848
蔘考文章:
https://symfony.com/doc/current/doctrine/reverse_engineering.html How to Generate Entities from an Existing Database
https://www.jianshu.com/p/75fc86ec98aa symfony 創建數據庫映射時報錯: Unknown database type enum requested
https://codeday.me/bug/20181110/383025.html symfony – Doctrine2忽略數據庫錶
基礎命令:
php bin/console doctrine:mapping:import "App\Entity" annotation --path=src/Entity
App\Entity 命名空間
annotation 生成方式
--path 生成路徑
生成getter/setter方法
php bin/console make:entity --regenerate App\\Entity\\UserModule
也可以使用phptorm生成getter、setter方法
可能齣現的問題:
1、不想生成全部錶
添加蔘數進行過濾,過濾的是匹配類名 --filter=User
2、過濾不符閤規則的錶
修改doctrine配置,過濾錶,添加
schema_filter: ~^(?!Table1)~
3、提示數據類型不支持
修改doctrine配置,添加類型映射錶,添加
mapping_types: enum: string set: string varbinary: string tinyblob: text
4、數據庫錶太多,僅生成想要的錶
修改doctrine配置,schema_filter規則臨時僅允許特定錶
schema_filter: ~^(user)$~
5、連接其他數據庫
php bin/console doctrine:mapping:import "App\Entity" annotation --path=src/Entity --em=xzweb
最終樣例如下:
發錶評論