Builder

web application developer blog

SQLAlchemy Model Class Generator for PostgreSQL

SAModel Generator

Şu üç teknolojiyi bir arada kullanıyorsanız:

ve benim gibi, önce model class’ı yazmak yerine veri tabanı tablolarını oluşturmayı seviyorsanız. Model class’larını oluşturacak bir reverse engineering scripti zorunlu oluyor. Özellikle de büyük projelerde her bir modeli tek tek yazmak tam bir işkence ve hata yapma ihtimali çok yüksek. Oysa veri tabanı tabloları ER diagramında oluşturulmalı diye düşünüyorum. Bu çalışma şekliye bir reverse engineering programı bulamadım.

İşte bu ihtiyaçtan bir python script yazdım ve kullanmaya başladım. Script, SQLAlchemy için PostgreSQL tablolarını okuyor, İlişkleri sorguluyor ve model sınıflarını üretiyor. Her bir sınıf için to_json yordamı da bonus 🙂

Scripti şurdan edinebilirsiniz.

https://github.com/aerkanc/SAModelGenerator

Kullanımı ise basit

Örnek vermek gerekirse:

Ben şimdiye kadar üç projede kullandım. Karşılaştığım sorunları düzelttim. Eğer yeni bir hata bulursanız, düzeltin/raporlayın/commit request yapın/ fork yapın düzeltin.

 

Örnek

Bir product, brand ilişkisi üzerinden örnek vermek gerekirse, sonuç olarak ortaya çıkacak model sınıfları şöyle olacaktır:

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir