ent - 一個強大的Go語言實體框架
ent是一個簡單而又功能強大的Go語言實體框架,ent易於構建和維護應用程式與大資料模型。
- 圖就是程式碼 - 將任何資料庫表建模為Go物件。
- 輕鬆地遍歷任何圖形 - 可以輕鬆地執行查詢、聚合和遍歷任何圖形結構。
- 靜態型別和顯式API - 使用程式碼生成靜態型別和顯式API,查詢資料更加便捷。
- 多儲存驅動程式 - 支援MySQL, PostgreSQL, SQLite 和 Gremlin。
- 可擴充套件 - 簡單地擴充套件和使用Go模板自定義。
ent允許直接在嵌入語言中使用基於圖的資料模型,而不是強迫開發人員學習新的查詢語言,如 Datomic datalog 或 SPARQL,同時避免鎖定到特定的資料儲存後端。
使用方便:
- * 使用Ent+Atlas進行自動資料庫遷移。Ent實現了很多偉大的低階別的預設,不需要考慮(外來鍵約束、索引、連線表的命名等等)。
- * 從Ent Schema生成GraphQL API
- * 生成Protobuf定義,供內部工具使用(現在使用Buf作為實際的工具,但生成protobuf可以節省大量的時間)。
- * 能夠快速製作真正複雜的多邊連線,而不需要真正考慮SQL,這使得新功能能夠快速實現。
- * 查詢最佳化,例如在GraphQL查詢中使用WINDOW子句進行分頁(我甚至都沒有想到這是有可能的)。
- * 生成的程式碼有很多行,但它的結構非常好,而且是習慣性的,使其易於擴充套件。
如果您只是在尋找 ORM + GraphQL,請嘗試 Entgql,它是帶有 Gqlgen 庫 [1] 的 GraphQL 的 Ent 擴充套件。定義 ORM 模式後,它將為中繼伺服器生成 GraphQL 查詢。您仍然需要自己實現 GraphQL 突變,但至少它會為您建立輸入型別(用於建立/更新)。
:https ://github.com/99designs/gqlgen
TypeScript 中一個 Ent 啟發的 ORM:https ://aphrodite.sh/
相關文章
- Go語言筆記[實現一個Web框架實戰]——EzWeb框架(一)Go筆記Web框架
- PHP轉Go系列 | 推薦一個強大的Go語言工具函式庫PHPGo函式
- ThinkGo:一個輕量級的 Go 語言 MVC 框架GoMVC框架
- [Go語言寫介面]一、使用xcgui完成go語言第一個軟體介面GoGUI
- 手把手和你一起實現一個Web框架實戰——EzWeb框架(二)[Go語言筆記]Go專案實戰Web框架Go筆記
- 手把手和你一起實現一個Web框架實戰——EzWeb框架(三)[Go語言筆記]Go專案實戰Web框架Go筆記
- 手把手和你一起實現一個Web框架實戰——EzWeb框架(四)[Go語言筆記]Go專案實戰Web框架Go筆記
- 手把手和你一起實現一個Web框架實戰——EzWeb框架(五)[Go語言筆記]Go專案實戰Web框架Go筆記
- Go 語言實踐(一)Go
- 突破!自然語言強化學習(NLRL):一個可處理語言反饋的強化學習框架強化學習框架
- 乾貨分享:六個知名的Go語言web框架GoWeb框架
- GO語言一個簡單的工程Go
- Go 語言體系下的微服務框架選型:Dubbo-goGo微服務框架
- Go 語言體系下的微服務框架選型: Dubbo-goGo微服務框架
- Go語言微服務開發框架實踐-go chassis(上篇)Go微服務框架
- Go語言微服務開發框架實踐-go chassis(中篇)Go微服務框架
- go語言的初體驗Go
- Facebook 開源 Golang 實體框架 Ent 現已支援 TiDBGolang框架TiDB
- go語言的31個坑Go
- 帶讀 |《Go in Action》(中文:Go語言實戰)(一)Go
- Go語言開發的Web框架都有哪些?GoWeb框架
- GO 語言 Web 開發實戰一GoWeb
- 20 個有用的 Go 語言微服務開發框架吐血總結!!!Go微服務框架
- Go 語言 結構體Go結構體
- 用自己的程式語言實現了一個網站(增強版)網站
- Go語言核心36講(Go語言實戰與應用一)--學習筆記Go筆記
- Snow——簡單易用的 Go 語言業務框架Go框架
- Go語言實現RPCGoRPC
- Go 語言實戰 GraphQLGo
- go語言實現自己的RPC:go rpc codecGoRPC
- Go 語言的 4 個特性改動Go
- Go 1.21的2個語言變化Go
- Go語言————1、初識GO語言Go
- 基於go語言gin框架的web專案骨架Go框架Web
- 基於GO語言框架Gin開發的MVC輪子框架:GinLaravelGo框架MVCLaravel
- Facebook 開源 Golang 實體框架 Ent 支援分散式資料庫 TiDBGolang框架分散式資料庫TiDB
- Go語言map的底層實現Go
- Go語言實現的Java Stream APIGoJavaAPI