QtAlchemy

Screenshot Λογισμικό:
QtAlchemy
Στοιχεία Λογισμικού:
Εκδοχή: 0.8.3
Ανεβάστε ημερομηνία: 20 Feb 15
Προγραμματιστής: Joel B. Mohler
Άδεια: Δωρεάν
Δημοτικότητα: 38

Rating: 2.0/5 (Total Votes: 1)

QtAlchemy είναι μια συλλογή από Qt Model-View τάξεις και βοηθητικές λειτουργίες για να βοηθήσει στην ταχεία ανάπτυξη των εφαρμογών βάσεων δεδομένων desktop & nbsp?. Στόχος του είναι να παρέχει ένα ισχυρό API για την έκθεση του εξωτερικού βασικές σχέσεις σε ένα κομψό και άμεσο τρόπο στο χρήστη των εφαρμογών . Τα μενού περιβάλλοντος, αναζητήσεις και combo-κουτιά και καρτέλες διεπαφές όλα χρησιμοποιηθούν. Η χρήση του SQLAlchemy καθιστά πιθανό ότι αυτά τα χαρακτηριστικά που υποστηρίζονται σε μια ποικιλία backends δεδομένων με σχεδόν χωρίς αλλαγές κώδικα.
Η κλάση Command δίνει έναν τρόπο για να κατασκευάσει τα μενού και γραμμές εργαλείων από διακοσμημένα λειτουργίες πύθωνα. Η δύναμη της αυτό γίνεται πιο εμφανές όταν δεσμεύεται σε μια προβολή όπου η λειτουργία της εντολής μπορεί στη συνέχεια να λάβει το αναγνωριστικό του επιλεγμένου στοιχείου του άποψη. Αυτό παρέχει έναν ευέλικτο τρόπο να συνδέσει τις εντολές σε κάθε ερώτημα που δημιουργείται sqlalchemy απόψεις.
Πλήρης τεκμηρίωση είναι διαθέσιμη σε http://qtalchemy.org.
QtAlchemy έχει αναπτυχθεί με την Python 2.6.x, 0.6.x SQLAlchemy και PyQt 4.7.x. Αναμένεται ότι θα είναι λειτουργικό σε όλα τα κοντινά εκδόσεις. Υπάρχει μια προσπάθεια που γίνεται για να βεβαιωθείτε ότι η λειτουργία ισοτιμία επιτυγχάνεται για Windows και Linux (και Mac πάρα πολύ, αλλά δεν έχω μία).
QtAlchemy αναμένεται να συνεργαστεί πλήρως με PySide από την έκδοση 1.0.4. Υποστήριξη PySide μπορεί να ενεργοποιηθεί με την εκτέλεση του σεναρίου κελύφους use_pyside.sh που απλώς αλλάζει τις εισαγωγές από PyQt4 να PySide.
Παράδειγμα
Προς το συμφέρον της να είναι συνοπτική, το παράδειγμα που δίνεται εδώ δεν αναφέρονται σε μια βάση δεδομένων.
QtAlchemy χρησιμοποιώντας API2 του PyQt γι 'αυτό πρέπει να ενεργοποιήσετε ότι πριν από την εισαγωγή PyQt4
& Nbsp? >>> Γουλιά εισαγωγής
& Nbsp? >>> Sip.setapi («QString», 2)
& Nbsp? >>> Sip.setapi («QVariant», 2)
Η κατηγορία ακινήτου UserAttr παρέχει ακόμη έναν άλλο τύπο που ορίζεται ιδιοκτησία πύθωνα. Ο σκοπός της ανακαλύπτουμε αυτό ήταν για να διασφαλίσει ότι θα μπορούσαν να αλληλεπιδράσουν με τα μοντέλα μας επαρκώς και να παρέχει μια ενιαία εμπειρία για SQLAlchemy ιδιότητες της στήλης και UserAttr ιδιότητες.
& Nbsp? >>> Από qtalchemy UserAttr εισαγωγής
& Nbsp? >>> Datetime εισαγωγής
& Nbsp? >>> Κλάση Person (αντικείμενο):
& Nbsp? ... Όνομα = UserAttr (str, "Όνομα")
& Nbsp? ... Birth_date = UserAttr (datetime.date, «Ημερομηνία Γέννησης»)
& Nbsp? ... Ηλικία = UserAttr (int, "Ηλικία (ημέρες)", μόνο για ανάγνωση = True)
& Nbsp? ...
& Nbsp? ... @ Age.on_get
& Nbsp? ... Def age_getter (αυτο):
& Nbsp? ... Επιστροφή (datetime.date.today () - self.birth_date) .days
Με τη δήλωση αυτή, μπορούμε να δηλώσουμε ένα άτομο και να υπολογίσει την ηλικία τους:
& Nbsp? >>> Μου = Άτομο ()
& Nbsp? >>> Me.name = "Joel"
& Nbsp? >>> Me.birth_date = datetime.date (1979,1,9)
& Nbsp? >>> #depends Me.age σήμερα! - #doctest: + SKIP
& Nbsp? 11746
& Nbsp? >>> Me.age- (datetime.date.today () - datetime.date (2011,1,9)) ημέρες για τα γενέθλιά # 1> από PyQt4 εισαγωγή QtCore, QtGui.
& Nbsp? >>> Από qtalchemy MapperMixin εισαγωγής, LayoutLayout, ButtonBoxButton, LayoutWidget
& Nbsp? >>>
& Nbsp? >>> Κατηγορία PersonEdit (QtGui.QDialog, MapperMixin):
& Nbsp? ... Def __init __ (self, μητρική, πρόσωπο):
& Nbsp? ... QtGui.QDialog .__ init __ (self, γονέα)
& Nbsp? ... MapperMixin .__ init __ (self)
& Nbsp? ...
& Nbsp? ... Self.person = πρόσωπο
& Nbsp? ...
& Nbsp? ... VBox = QtGui.QVBoxLayout (αυτο)
& Nbsp? ... Mm = self.mapClass (Πρόσωπο)
& Nbsp? ... Mm.addBoundForm (VBox, ["όνομα", "birth_date"])
& Nbsp? ... Mm.connect_instance (self.person)
& Nbsp? ...
& Nbsp? ... Κουμπιά = LayoutWidget (VBox, QtGui.QDialogButtonBox ())
& Nbsp? ... Self.close_button = ButtonBoxButton (κουμπιά, QtGui.QDialogButtonBox.Ok)
& Nbsp? ... Buttons.accepted.connect (self.btnClose)
& Nbsp? ...
& Nbsp? ... Def btnClose (αυτο):
& Nbsp? ... Self.submit () # αλλαγές κατεβαίνουν μοντέλο στο επίκεντρο αλλαγή? διασφαλίσει τη λήψη της τρέχουσας εστίαση
& Nbsp? ... Self.close ()
Και, τώρα, χρειαζόμαστε μόνο λίγο κώδικα app για να κλωτσήσει πραγματικά αυτό off
& Nbsp? >>> App = QtGui.QApplication ([])
& Nbsp? >>> Σαμ = Άτομο ()
& Nbsp? >>> Sam.name = "Samuel"
& Nbsp? >>> Δ = PersonEdit (Κανένα, Sam)
& Nbsp? >>> D.exec_ () # gui αλληλεπίδραση - #doctest: + SKIP
& Nbsp? 0
& Nbsp? >>> Sam.age # αναλαμβάνει την επιλογή του χθες στο GUI - #doctest: + SKIP
& Nbsp? 1
Ανάπτυξη
QtAlchemy είναι ακόμα στο στάδιο της ανάπτυξης του πυρήνα όσο και το χρονοδιάγραμμα των εργασιών μου επιτρέπει. Η τεκμηρίωση αυξάνεται καθώς οι ιδέες υλοποιούνται και μαθαίνω σφίγγα για τη γενική παραγωγή τεκμηρίωσης. Αγωνιζόμαστε για την πλήρη κάλυψη doc-τεστ όσο το δυνατόν, αλλά PyQt Model-View και gui επιβάλλουν ορισμένες επιπλοκές σε doc-τεστ.
Οι προσδοκίες μου για 0,7 συνεχίζουν να αυξάνονται, έτσι έδωσα σε έναν 0.6.10 απελευθέρωση κάτω από το νέο όνομα της qtalchemy. Αυτό έρχεται σε συνδυασμό με ένα ολοκαίνουργιο (και δεν είναι πραγματικά έτοιμο) ιστοσελίδα http://qtalchemy.org. Πριν από 0,7 απελευθέρωση, στόχος μου είναι να έχω:
- Έγγραφο Επιλογή InputYoke
- PBMdiTable και PBSearchDialog κίνηση να qtalchemy.ext

Τι είναι καινούργιο σε αυτήν την έκδοση:

  • Python 3 υποστήριξη! Δεν 2to3 ή άλλες gotchas.
  • επιδιορθώσεις συμβατότητας SQLAlchemy 0.9x

Τι είναι καινούργιο στην έκδοση 0.8.0:

  • Αλλαγή για PySide ως προεπιλογή εισαγωγές
  • Χαλαρώστε άδεια από την GPL και LGPL
  • Βελτίωση αλλαγή ζυγό χειρισμού
  • Δημιουργία νέου PopupKeyListing για ξένο κλειδί εισόδου

Τι είναι καινούργιο στην έκδοση 0.7.1:

  • QueryDataView αποκτήσει βασική ικανότητα επανάληψης του ερωτήματος στη στήλη κλικ κεφαλίδα για τη διαλογή

  • Διορθώσεις
  • μερικά doc
  • Ο νέος βοηθός λειτουργία της οικογένειας για τη χρήση του Geraldo σε qtalchemy.ext.reporttools

Τι είναι καινούργιο στην έκδοση 0.7.0:

  • βελτιωμένο χειρισμό σφάλμα εξαίρεσης και την υποβολή εκθέσεων για τις εφαρμογές GUI με -out κονσόλα
  • Ο νέος ζυγό υποστηρίζει ένα σύνθετο πλαίσιο
  • βελτιώσουμε την τεκμηρίωση ζυγό
  • να προσθέσετε την πλήρη παραδείγματα προς τα εμπρός τεκμηρίωσης
  • διάφορα μοντέλο / λίστα βελτιώσεις όπως το πλάτος της στήλης αθέτησαν

Τι είναι καινούργιο στην έκδοση 0.6.12:

  • BoundCommandMenu έχει υποδοχές για να αποσταλούν από HTML οντότητα σύνδεσης εντολές σε html προβολή μορφές
  • δομημένη φορτίο και να σώσει την επέκταση του πλαισίου BoundDialog
  • Ο νέος TreeView εκθέτοντας την QTreeView
  • υποστήριξη μοντέλο δέντρο σε PBTableModel
  • βελτιωμένη φορητότητα PySide και σταθερά διάφορα συντριβή σφάλματα που σχετίζονται με αυτό

Τι είναι καινούργιο στην έκδοση 0.6.11:

  • θεματική βοήθεια και συμβουλές για την κατάσταση πεδία

  • Σήματα
  • Ο νέος preCommand / ανανέωσης με τη δομή CommandEvent επιτρέπει να ματαιωθεί από την οθόνη του περιβάλλοντος
  • βελτιώσεις στο γενικό οδηγό εισαγωγής δεδομένων
  • βελτιώσεις προβολή πίνακα (bug fixes, αλλά διορθώθηκε ενημερώσεις του μοντέλου να είναι πιο ακριβείς)
  • χρήση pywin32 ShellExecute αντί os.system για την καλύτερη υποστήριξη των Windows

Τι είναι καινούργιο στην έκδοση 0.6.10:

  • μετονομάστηκε σε qtalchemy
  • εκτεθεί ένωση της Qt των εικόνων με τις εντολές που εμφανίζονται στο μενού και γραμμές εργαλείων
  • μετακόμισε qtalchemy.PBTable να qtalchemy.widgets.TableView
  • νέα μονάδα qtalchemy.ext για κοινή διαλόγους (μάγος εισαγωγής δεδομένων για τώρα)

Απαιτήσεις :

  • Python

Παρόμοια λογισμικά

OraRep
OraRep

11 May 15

Ora2Pg
Ora2Pg

17 Feb 15

ua2.mongolog
ua2.mongolog

20 Feb 15

Άλλο λογισμικό του προγραμματιστή Joel B. Mohler

PyHacc
PyHacc

14 Apr 15

Σχόλια για QtAlchemy

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!
Αναζήτηση ανά κατηγορία