QtAlchemy

Skjermbilde programvare:
QtAlchemy
Prog.varedetaljer:
Versjon: 0.8.3
Last opp dato: 20 Feb 15
Utvikler: Joel B. Mohler
Lisens: Gratis
Popularitet: 38

Rating: 2.0/5 (Total Votes: 1)

QtAlchemy er en samling av Qt Model-View klasser og hjelpefunksjoner til hjelp i rask utvikling av desktop databaseapplikasjoner. & Nbsp; Formålet er å gi en sterk API for å utsette utenlandske viktige relasjoner i elegante og umiddelbare måter til brukeren av applikasjoner . Kontekstmenyer, søk og kombinasjonsbokser og faner grensesnitt er alle utnyttet. Bruken av SQLAlchemy gjør det mulig at disse funksjonene støttes på en rekke databasesystem i med nesten ingen kodeendringer.
Command klasse gir en måte å konstruere menyer og verktøylinjer fra dekorerte python funksjoner. Kraften av dette blir mer tydelig når bundet til en visning hvor kommandoen funksjonen kan da motta en identifikator for det valgte elementet av visningen. Dette gir en fleksibel måte å knytte kommandoer til eventuelle sqlalchemy spørring genererte visninger.
Full dokumentasjon er tilgjengelig på http://qtalchemy.org.
QtAlchemy er utviklet med python 2.6.x, SQLAlchemy 0.6.x og PyQt 4.7.x. Det er ventet at det vil være funksjonelt i alle nærliggende versjoner. Det er et forsøk gjort for å sørge for at funksjonen paritet er oppnådd for Windows og Linux (og mac også, men jeg har ikke en).
QtAlchemy forventes å fullt arbeid med PySide som av versjon 1.0.4. PySide støtte kan aktiveres ved å kjøre use_pyside.sh shell script som bare endrer import fra PyQt4 til PySide.
Eksempel
Av hensyn til å være kortfattet, betyr eksempelet gitt her ikke referere til en database.
QtAlchemy hjelp API2 av PyQt så vi må aktivere det før du importerer PyQt4
& Nbsp; >>> import slurk
& Nbsp; >>> sip.setapi ('QString', 2)
& Nbsp; >>> sip.setapi ('QVariant', 2)
Den UserAttr eiendom klassen gir enda en annen type definert python eiendom. Hensikten med å gjenoppfinne dette var å sikre at vi kan samhandle med våre modeller tilstrekkelig og gi en enhetlig opplevelse for SQLAlchemy kolonneegenskaper og UserAttr egenskaper.
& Nbsp; >>> fra qtalchemy import UserAttr
& Nbsp; >>> import datetime
& Nbsp; >>> klasse Person (objekt):
& Nbsp; ... name = UserAttr (str, "Name")
& Nbsp; ... Birth_Date = UserAttr (datetime.date, "Fødselsdato")
& Nbsp; ... alder = UserAttr (int, "Alder (dager)", skrivebeskyttet = True)
& Nbsp; ...
& Nbsp; ... @ age.on_get
& Nbsp; ... def age_getter (egen-):
& Nbsp; ... avkastning (datetime.date.today () - self.birth_date) .days
Med denne erklæringen, kan vi erklære en person og beregne deres alder:
& Nbsp; >>> meg = Person ()
& Nbsp; >>> me.name = "Joel"
& Nbsp; >>> me.birth_date = datetime.date (1979,1,9)
& Nbsp; >>> me.age #depends på i dag! - #doctest: + SKIP
& Nbsp; 11746
& Nbsp; >>> me.age- (datetime.date.today () - datetime.date (2011,1,9)) dager # på bursdagen en> fra PyQt4 import QtCore, QtGui.
& Nbsp; >>> fra qtalchemy import MapperMixin, LayoutLayout, ButtonBoxButton, LayoutWidget
& Nbsp; >>>
& Nbsp; >>> klasse PersonEdit (QtGui.QDialog, MapperMixin):
& Nbsp; ... def __init __ (selv, foreldre, person):
& Nbsp; ... QtGui.QDialog .__ init __ (selv, foreldre)
& Nbsp; ... MapperMixin .__ init __ (egen-)
& Nbsp; ...
& Nbsp; ... self.person = person
& Nbsp; ...
& Nbsp; ... vbox = QtGui.QVBoxLayout (egen-)
& Nbsp; ... mm = self.mapClass (Person)
& Nbsp; ... mm.addBoundForm (vbox, ["navn", "Birth_Date"])
& Nbsp; ... mm.connect_instance (self.person)
& Nbsp; ...
& Nbsp; ... knapper = LayoutWidget (vbox, QtGui.QDialogButtonBox ())
& Nbsp; ... self.close_button = ButtonBoxButton (knapper, QtGui.QDialogButtonBox.Ok)
& Nbsp; ... buttons.accepted.connect (self.btnClose)
& Nbsp; ...
& Nbsp; ... def btnClose (egen-):
& Nbsp; ... self.submit () # endringer stige å modellere på fokus-endring; sikre mottak av dagens fokus
& Nbsp; ... self.close ()
Og nå, vi trenger bare noen app-kode for å faktisk sparke dette av
& Nbsp; >>> app = QtGui.QApplication ([])
& Nbsp; >>> sam = Person ()
& Nbsp; >>> sam.name = "Samuel"
& Nbsp; >>> d = PersonEdit (Ingen, sam)
& Nbsp; >>> d.exec_ () # gui samhandling - #doctest: + SKIP
& Nbsp; 0
& Nbsp; >>> sam.age # foruts utvalg av i går i gui - #doctest: + SKIP
& Nbsp; 1
Utvikling
QtAlchemy er fortsatt i tung kjerne utviklingen like mye som min arbeidsplan tillater. Dokumentasjonen vokser som ideene er fleshed ut og jeg lærer sfinks for allmenn generasjon dokumentasjon. Vi strever for fullt doc-testdekning som mulig, men PyQt modell-view og gui pålegge visse komplikasjoner doc-tester på.
Mine forventninger til 0,7 fortsette å øke så jeg ga etter for et 0.6.10 utgivelsen under det nye navnet på qtalchemy. Dette kommer sammen med en splitter ny (og egentlig ikke ferdig) nettside http://qtalchemy.org. Før en 0.7 utgivelse, sikter jeg til å ha:
- Dokument InputYoke utvalg
- PBMdiTable og PBSearchDialog flytte til qtalchemy.ext

Hva er nytt i denne utgaven:

  • Python tre støtte! Ingen 2to3 eller andre feller.
  • SQLAlchemy 0,9x kompatibilitets fikser

Hva er nytt i versjon 0.8.0:

  • Bytt til PySide som standard import
  • Slapp lisens fra GPL til LGPL
  • Forbedre åk endring håndtering
  • Opprett ny PopupKeyListing for fremmednøkkel oppføring

Hva er nytt i versjon 0.7.1:

  • QueryDataView fått grunnleggende evne til å requery på kolonneoverskriften klikk for sortering
  • noen doc fikser
  • ny hjelpefunksjon familie for å bruke Geraldo i qtalchemy.ext.reporttools

Hva er nytt i versjon 0.7.0:

  • forbedret unntak feilhåndtering og rapportering for grafiske applikasjoner med utsjekking konsoll
  • nye åk støtte en kombinasjonsboks
  • forbedre åk dokumentasjon
  • legge komplette eksempler til forsiden av dokumentasjon
  • ulike modell / liste forbedringer inkludert kolonnebredde misligholde

Hva er nytt i versjon 0.6.12:

  • BoundCommandMenu har spor å bli sendt fra html bindende enhet kommandoer til html visning former
  • strukturert last og lagre utvide rammene i BoundDialog
  • ny Utforsker utsette QTreeView
  • tre modell støtte i PBTableModel
  • bedre PySide portabilitet og faste ulike krasj bugs relatert til dette

Hva er nytt i versjon 0.6.11:

  • kontekstsensitiv hjelp og status tips for felt
  • ny Forkommandoen / refresh signaler med CommandEvent struktur slik avbryte ved omgivelses skjerm
  • forbedringer i det generiske data import veiviseren
  • table view forbedringer (feilrettinger, korrigert modelloppdateringer for å være mer presis)
  • bruk pywin32 ShellExecute istedenfor os.system for bedre vinduer støtte

Hva er nytt i versjon 0.6.10:

  • omdøpt til qtalchemy
  • utsatt Qt tilknytning av ikoner med kommandoer som vises i menyer og verktøylinjer
  • flyttet qtalchemy.PBTable til qtalchemy.widgets.TableView
  • ny qtalchemy.ext modul for vanlige dialoger (en data import veiviseren for nå)

Krav :

  • Python

Lignende programvare

ffmigration
ffmigration

11 May 15

Knoda
Knoda

2 Jun 15

RedStore
RedStore

11 May 15

doppler
doppler

20 Feb 15

Annen programvare fra utvikleren Joel B. Mohler

PyHacc
PyHacc

14 Apr 15

Kommentarer til QtAlchemy

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!