symfony根據數據庫生成實體

2019-07-02 17:18:00
CJL
原創
3402

蔘考文章:

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


最終樣例如下:


發錶評論
評論通過審核後顯示。
流量統計