IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxPython Discussion :

Interface tabulaire base de données


Sujet :

wxPython

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Février 2014
    Messages : 6
    Points : 9
    Points
    9
    Par défaut Interface tabulaire base de données
    Bonjour,

    Je suis un éternel débutant. Souhaitant programmer avec Python, votre site m'aide beaucoup et j'y retourne chaque fois que j'ai un soucis. Mais j'ai un problème pour lequel je n'ai pas encore trouvé de solution malgré de nombreuses recherches sur votre site et le web.
    C'est l'affichage de façon tabulaire dans une fenêtre (GUI) d'une table d'une base de données et pouvoir y faire la création, modification, suppression d'enregistrements (CRUD) et l'interaction entre les champs affichés et ce qui se passe dans la base de données. Tout ce que j'ai trouvé ce sont des formulaires ne traitant qu'un enregistrement à la fois.
    Wx me semble être un bon choix comme bibliothèque graphique.

    - Avec Tk il semblerait que ça soit très difficile à faire.
    - Gtk semble complexe et peu documenté en français.
    - Qt est propriétaire malgré que l'on puisse en partie l'utiliser librement. Et paraît énorme. Pourtant la classe qui me semble être la bonne serait Qtable.
    - Wx me paraît être un bon choix pour le graphisme. Et Grid la bonne classe mais je ne sais pas quoi en faire (toujours aucun exemple trouvé).
    - Django, je suis en train de regarder la doc mais je n'ai encore rien vu de clair au sujet d'affichage tabulaire et cela semble énorme.


    Auriez-vous quelques pistes à me suggérer.

    Merci.

  2. #2
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 969
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 969
    Points : 3 375
    Points
    3 375
    Par défaut
    Django c'est la grosse librairie pour uniquement des db relationnelles.
    Si tu veux sortir de la route dessinée par Django, tu vas avoir des soucis.
    Mais la librairie est très complète.

    Regarde Flask.
    Très très simple mais limité à l'essentiel.
    Tu peux le compléter avec des extensions, comme des légos.
    Tu arrives à un résultat rapidement.

    Perso, je suis débutant en Python.
    J'ai déjà fait du MVC avec perl (mojolicious), Flask est vraiment plus simple et fait la même chose.

    Pourquoi te casser la tête avec les librairies gui alors que tu peux le faire en web... (flask + jquery + bootstrap par exemple).

    Rem: il me semble que sqlalchemy a déjà une interface graphique de présentation de la db.
    Si la réponse vous a aidé, pensez à cliquer sur +1

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Toutes les bibliothèques graphiques ont un équivalent de grid.

    La seule qui aille un peu au delà est Qt avec les QModelView (et non QTable). Maintenant, c'est "compliqué" parce que pour pouvoir répondre à la plupart des besoins des développeurs, il faut avoir un outil flexible et de construire des abstractions qui permettront de... et donc beaucoup de boulot pour comprendre comment çà fonctionne.

    Django est un serveur Web, il ne s'occupe pas de la présentation qui est côté client (le navigateur Web) et dont le contenu dynamique sera géré par des bibliothèques Javascript - vous n'êtes pas dans le bon forum -.

    Mais un truc "souple" aura le même niveau de complexité que ce qui existe avec Qt.
    Donc vous avez le choix: apprendre à vous servir de Qt, trouver une extension Wx, tkinter,... qui vous mâche le boulot (mais il faudra apprendre à s'en servir), ou coder vous même un minimum de fonctionnalités qui réponde aux besoins de votre application.

    note: vous avez une extension tkinter qui permet de faire des tableaux. Elle n'est pas simple à utiliser (comme le reste) et c'est compliqué pour le programmeur Python d'arriver à la faire fonctionner car c'est une extension TCL écrite en C pour laquelle il existe des plugins Python....
    Rien de bien méchant mais pas grand monde ne sait faire marcher un truc pareil.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Connexion à un site, interface graphique, base de données
    Par Rack Kendorim dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 01/04/2013, 21h16
  2. interface dynamique - base de donnée
    Par augure000 dans le forum Débuter
    Réponses: 2
    Dernier message: 17/03/2010, 14h09
  3. Réponses: 4
    Dernier message: 26/02/2008, 14h55
  4. Problème d'interface de base de données avec Frontpage
    Par Auxtown-Son dans le forum Outils
    Réponses: 3
    Dernier message: 11/07/2006, 16h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo