QtAlchemy

Screenshot Software:
QtAlchemy
Szczegóły programowe:
Wersja: 0.8.3
Filmu: 20 Feb 15
Wywoływacz: Joel B. Mohler
Licencja: Wolny
Popularność: 38

Rating: 2.0/5 (Total Votes: 1)

QtAlchemy jest zbiorem Qt model-view klas i funkcji pomocniczych w celu ułatwienia szybkiego tworzenia aplikacji bazodanowych na pulpicie. & Nbsp; to ma na celu zapewnienie silnego API do wystawiania obcego relacji klucza w eleganckich i bezpośrednich sposobów użytkownika aplikacji , Menu kontekstowe, wyszukiwania i combo-box i kartach interfejsy są wykorzystywane. Zastosowanie SQLAlchemy umożliwia, że ​​te funkcje są obsługiwane przez różne bazami danych z praktycznie bez zmian w kodzie.
Klasa poleceń daje drogę do budowy menu i paski narzędzi z urządzonych funkcji Pythona. Moc ta staje się coraz bardziej oczywiste, gdy wiąże się z myślą, w których funkcja poleceń może wtedy otrzymać identyfikator wybranego elementu widoku. To zapewnia elastyczny sposób, aby połączyć polecenia do wszelkich zapytań sqlalchemy generowanych widoków.
Pełna dokumentacja jest dostępna w http://qtalchemy.org.
QtAlchemy został opracowany z Pythona 2.6.x, 0.6.x oraz PyQt sqlalchemy 4.7.x. Oczekuje się, że będzie ona funkcjonalna w pobliżu wszystkich wersjach. Nie jest wysiłek w celu upewnienia się, że funkcja parzystości jest osiągnięty dla Windows i Linuksa (i mac też, ale nie masz).
Oczekuje się QtAlchemy w pełni współpracować z PySide od wersji 1.0.4. Wsparcie PySide można włączyć, uruchamiając skrypt use_pyside.sh które jedynie zmienia przywóz z PyQt4 do PySide.
Przykład
W interesie jest zwięzłe, Podany przykład nie odwołuje się do bazy danych.
QtAlchemy pomocą API2 z PyQt więc należy włączyć, że przed importem PyQt4
& Nbsp; >>> import łyk
& Nbsp; >>> sip.setapi ("QString", 2)
& Nbsp; >>> sip.setapi ("QVariant", 2)
Klasa własności UserAttr zapewnia kolejny typ zdefiniowany nieruchomości Pythona. Celem wymyślania tego było zapewnienie, że możemy współpracować z naszych modeli dostatecznie i zapewnić jednolite doświadczenie dla właściwości kolumn sqlalchemy i właściwości UserAttr.
& Nbsp; >>> z qtalchemy importu UserAttr
& Nbsp; >>> import datetime
& Nbsp; >>> klasy Person (obiekt):
& Nbsp; ... name = UserAttr (str, "Nazwa")
& Nbsp; ... birth_date = UserAttr (datetime.date, "Data urodzenia")
& Nbsp; ... wiek = UserAttr (int, "Wiek (dni)", tylko do odczytu = True)
& Nbsp; ...
& Nbsp; ... @ age.on_get
& Nbsp; ... def age_getter (self):
& Nbsp; ... powrotu (datetime.date.today () - self.birth_date) .days
Z tej deklaracji, możemy zadeklarować osobę i obliczyć ich wieku:
& Nbsp; >>> me = Osoba ()
& Nbsp; >>> me.name = "Joel"
& Nbsp; >>> me.birth_date = datetime.date (1979,1,9)
& Nbsp; >>> #depends me.age na dziś! - #doctest: + SKIP
& Nbsp; 11746
& Nbsp; >>> me.age- (datetime.date.today () - datetime.date (2011,1,9)) dzień # na urodziny 1> z PyQt4 importu QtCore, QtGui.
& Nbsp; >>> z qtalchemy importu MapperMixin, LayoutLayout, ButtonBoxButton, LayoutWidget
& Nbsp; >>>
& Nbsp; >>> klasy PersonEdit (QtGui.QDialog, MapperMixin):
& Nbsp; ... def __init __ (self, rodzic, osoba):
& Nbsp; ... QtGui.QDialog .__ startowych __ (self, rodzic)
& Nbsp; ... MapperMixin .__ startowych __ (self)
& Nbsp; ...
& Nbsp; ... self.person = osoba
& Nbsp; ...
& Nbsp; ... vbox = QtGui.QVBoxLayout (self)
& Nbsp; ... mm = self.mapClass (osoba)
& Nbsp; ... mm.addBoundForm (vbox, ["nazwa", "birth_date"])
& Nbsp; ... mm.connect_instance (self.person)
& Nbsp; ...
& Nbsp; ... przyciski = LayoutWidget (vbox, QtGui.QDialogButtonBox ())
& Nbsp; ... self.close_button = ButtonBoxButton (przyciski, QtGui.QDialogButtonBox.Ok)
& Nbsp; ... buttons.accepted.connect (self.btnClose)
& Nbsp; ...
& Nbsp; ... def btnClose (self):
& Nbsp; ... self.submit () # zmiany zejść do modelowania na ostrości-zmian; zapewnienie odbioru bieżący fokus
& Nbsp; ... self.close ()
A teraz, tylko potrzebny jest kod aplikacji faktycznie kopnąć to od
& Nbsp; >>> app = QtGui.QApplication ([])
& Nbsp; >>> sam = Osoba ()
& Nbsp; >>> sam.name = "Samuel"
& Nbsp; >>> d = PersonEdit (Brak, sam)
& Nbsp; >>> d.exec_ () # gui interakcji - #doctest: + SKIP
& Nbsp; 0
& Nbsp; >>> sam.age # zakłada wybór wczoraj w GUI - #doctest: + SKIP
& Nbsp; 1
Rozwoju
QtAlchemy jest nadal w ciężkim rozwoju podstawowej jak mój harmonogram prac pozwala. Dokumentacja rośnie jak idee są popierane i uczę się sfinks dla ogólnego generowanie dokumentacji. Dążymy do pełnego pokrycia doc-testowym, jak to możliwe, ale PyQt model-view i gui narzucają pewne komplikacje w doc-testów.
Moje oczekiwania do 0,7 wzrastać więc dałem się do 0.6.10 wydaniu pod nową nazwą qtalchemy. To przychodzi w połączeniu z zupełnie nową (i naprawdę nie ukończony) strony http://qtalchemy.org. Przed 0,7 wydaniu, mam dążyć do posiadania:
- Dokument wybór InputYoke
- PBMdiTable i PBSearchDialog przejście do qtalchemy.ext

Co nowego w tym wydaniu:

  • Python 3 wsparcie! Nie 2to3 lub innych pułapek.
  • Poprawki kompatybilności SQLAlchemy 0,9x

Co nowego w wersji 0.8.0:

  • Zmiana PySide jako przywóz domyślne
  • Relax licencję GPL LGPL
  • Pomóż zmiany jarzma obsługi
  • Utwórz nową PopupKeyListing o wpis klucza obcego

Co nowego w wersji 0.7.1:

  • QueryDataView zyskał podstawową umiejętność Requery na kolumnie nagłówka kliknięć do sortowania,

  • Poprawki
  • Kilka doc
  • Nowa funkcja rodziny pomocnika za korzystanie Geraldo w qtalchemy.ext.reporttools

Co nowego w wersji 0.7.0:

  • lepsza obsługa błędów wyjątkiem i raportowania dla aplikacji GUI z wymeldowanie konsoli
  • nowe jarzmo wspieranie pole kombi,
  • poprawić dokumentację jarzma
  • dodaj kompletne przykłady do przodu dokumentacji
  • różnych modelu / ulepszenia lista w tym szerokości kolumny w zwłoce,

Co jest nowa w wersji 0.6.12:

  • BoundCommandMenu ma szczelin wysyłane ze html podmiot wiążącego Polecenia do html wyświetlania formularzy
  • obciążenie strukturę i zapisać rozszerzenia ram w BoundDialog
  • Nowy TreeView odsłaniając QTreeView
  • Wsparcie modelu drzewa PBTableModel
  • poprawić mobilność PySide i stałe różne crash-błędy z tym związane,

Co nowego w wersji 0.6.11:

  • pomoc kontekstowa i stanu wskazówki dla pól

  • Sygnały
  • Nowy polecenie wstępne / odświeżania z konstrukcji CommandEvent umożliwiające przerwanie przez ekranie otoczenia
  • poprawa ogólnej kreatora importu danych
  • zobacz tabelę ulepszenia (poprawki, poprawione aktualizacje modelu dokładniej)
  • Wykorzystanie pywin32 ShellExecute zamiast os.system dla lepszego wsparcia dla Windowsa,

Co nowego w wersji 0.6.10:

  • przemianowany na qtalchemy
  • narażone stowarzyszenie Qt ikon z komend pojawiających się w menu i paski narzędzi,
  • przeniósł qtalchemy.PBTable do qtalchemy.widgets.TableView
  • Nowy moduł qtalchemy.ext wspólnych okien dialogowych (Kreator importu danych do tej pory),

Wymagania :

  • Python

Podobne oprogramowanie

qtDbf
qtDbf

19 Feb 15

Jude
Jude

3 Jun 15

MyFSys
MyFSys

11 May 15

Jailer
Jailer

26 Apr 16

Inne programy z deweloperem Joel B. Mohler

PyHacc
PyHacc

14 Apr 15

Komentarze do QtAlchemy

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!