[Tutor PyCZ] Python, wxPython a databázová aplikace

Petr Vaněk subzero na rt.sk
Neděle Říjen 8 18:44:19 CEST 2006


On Sunday 08 October 2006 15:12, superman wrote:
> Případně zda takové prvky někdo už nenaprogramoval jako nadstavbu nad
> něco existujícího. Pak prosím ať to proboha není GPL, nechci tuto
> licenci. Tím vylyčuji předem i cokoli s PyQt.

kváky, kvák. PyQt samozřejmě můžeš použít i jako ne-gpl. Toť vše k nekonečným 
licenčním válkám. A teď si dám sám dobrovolně přes držku, že vůbec reaguju, 
když už jsem si několikrát slíbil, že nebudu.

Teď k těm GU-databázovým rozhraním. Ani v Qt nejsou dokonalé, ale alespoň tam 
jsou. Navíc (teď se bavím o 3, páč 4 jsem s DB ještě nezkoušel) jsou tyhle 
widgety nastaveny na naprosto zcestný auto-commit (když už použitá db 
transakce podporuje), bez lidsky slušné možnosti to jakkoli změnit.

Jak to řeším já (když už musím)? Nepoužívám je. Mám DB a mám GUI. GUI 
standardní widgety, tedy žádné QSqlTable apod., plním z DB, při změně dat 
uživatelem je pak manuálně vracím do DB a odchytávám výjimky. To je podle 
mého nejednodušší a nejspolehlivější řešení.

Navíc tě to donutí opravdu minimalizovat uživatelské vstupy. A uživatelské 
vstupy jsou největším nebezpečím a zhoubou DB. Se sestavami a jinými výstupy 
problém mít nebudeš.

Samozřejmě, že už jsem viděl pár tuze "pěkných" programů, a to nejen 
Pythonních, které používaly "dobrodiní" předpřipravených widgetů (jaj, ještě 
že už je pryč éra delphích komponent... alespoň doufám). Jedním slovem děs a 
mor. To už raději použij ms-accessovské formuláře, anebo oraklí formsy (když 
už chceš být mermomocí trestán).

takže - zdar a sílu
petr, databázový senior (tak nějak to mám na vizitce napsáno, nebo tak něco)


Další informace o konferenci Tutor