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

Django Python Discussion :

Lecture en boucle de la base de donnée avec JS, AJAX


Sujet :

Django Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut Lecture en boucle de la base de donnée avec JS, AJAX
    Bonjour,

    A la base je mettais dirigé vers les websocket pour faire communiquer mes joueurs entre eux c'est à dire qu'un joueur créé la partie en tant que serveur...etc, mais je compte mettre tous les joueurs en tant que client.
    Ces clients rejoindront des parties, ou créeront des partie, mais elle seront géré par le serveur du site.

    Chaque partie créer sera un enregistrement dans une table 'PARTIE' de ma BDD, et cette table aura plusieurs joueurs. Quand des joueurs rejoindront une partie le champs 'NO_PARTIE' de l'enregistrement du joueur dans la table 'JOUEUR' prendra l'id de la partie rejointe..

    Donc les données ne sont plus envoyé aux clients, mais le client doit constamment les chercher dans la base de donnée pour voir les changements (savoir combien il y a de joueurs, ou en est la partie ...etc).

    Donc ma question : Quelle méthode utiliser pour constamment lire dans la base de donnée, je suppose que ça n'est pas possible avec Django même mais en JS, JS peut il lire et écrire dans ma BDD, ajax est il la meilleur solution, ajax cohabite il avec Django de la même façon qu'avec un site php ?

    Merci.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Citation Envoyé par Romaiiiiiin Voir le message
    Donc ma question : Quelle méthode utiliser pour constamment lire dans la base de donnée, je suppose que ça n'est pas possible avec Django même mais en JS, JS peut il lire et écrire dans ma BDD, ajax est il la meilleur solution, ajax cohabite il avec Django de la même façon qu'avec un site php ?
    Ajax est une requête HTTP lancée depuis le navigateur (sur le client).
    Django est un serveur HTTP, il devrait savoir répondre à une requête (même "ajax").
    Mais les Websocket sont là pour faire remonter une information aux clients sans qu'ils aient à aller la chercher.

    Prenez le temps de digérer tous ces concepts, sinon pas facile de savoir quand utiliser quoi...
    D'autant que cela ne sera pas si simple à mettre en œuvre: en avez vous vraiment besoin?

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

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut
    Salut,

    Je trouve que le websocket est effectivement plus optimale, pour ce genre de chose, mais ça obligerai un client à devenir serveur ce que je ne souhaite pas.
    L'idéal se serait que le serveur Django le fasse implicitement (envoyer des données au clients), sans devoir recréer d'autre serveurs.


    Ce que je souhaite faire :

    Regrouper plusieurs utilisateur dans différentes 'rooms', et les faire communiquer entre eux, savoir quand quelqu'un rejoins la room, mettre au courant les utilisateurs de la room quand un utilisateur à cliqué sur un bouton..
    Mais je ne souhaite pas créer un serveur par room comme le ferait un websocket, car je ne pourrais plus écrire/lire dans la BDD de Django.


    Je ne vois donc qu'une seul solution : constamment lire la base de donnée pour vérifier s'il y a du changement, bien que je trouve cette méthode assez sale.

    Déjà est-ce que je me trompe dans mon raisonnement, et que me conseillerais tu d'utiliser pour faire cette chose ?


    Merci, pour l'aide que tu m'apportes ça m'aide beaucoup.

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Citation Envoyé par Romaiiiiiin Voir le message
    Je ne vois donc qu'une seul solution : constamment lire la base de donnée pour vérifier s'il y a du changement, bien que je trouve cette méthode assez sale.

    Déjà est-ce que je me trompe dans mon raisonnement, et que me conseillerais tu d'utiliser pour faire cette chose ?
    En gros, vous réalisez un "chat" via un serveur qui s'occupe de gérer les groupes/salles existantes.
    Vous pouvez utiliser un GUI basique qui dialogue avec un serveur via des sockets IP "standards" sans vous prendre le chou à emballer tout ça dans du javascript et du HTML (au moins dans un premier temps, çà évite d'avoir à penser dans 3 langages de programmation différents). Ce qui vous permettrait de penser aux fonctionnalités du jeu plutôt qu'à espérer qu'un outil magique les réalisera pour vous.

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

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2015
    Messages : 45
    Par défaut
    Qu'est ce que tu entends par "socket ip standard", quel est le langage utilisé pour la connexion, python ? Cette méthode créée elle un serveur par room ?
    As tu un tutoriel sur le sujet ?

    Je précise que j'ai toujours besoin de communiquer avec la base de donnée sans avoir à rafraîchir la page, l'ajax s'impose donc ?

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Je parle du petit monde TCP/IP qu'on vous a indiqué dans ce post et du besoin exprimé ici.

    Ce n'est pas en empilant les couches techniques comme HTML, Ajax, Javascript, Django,.... que les difficultés techniques que vous cherchez à résoudre vont disparaître.
    Et si vous voulez un tuto pour voir comment réaliser çà, vous avez déjà celui-ci.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/04/2011, 01h09
  2. Réponses: 7
    Dernier message: 13/10/2010, 18h47
  3. Ecriture/ lecture fichier INI pour connexion base de données
    Par lyraaa dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 08/06/2007, 20h37
  4. [MySQL] Problème de boucle while sur base de données
    Par Darhyl dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/05/2006, 15h11
  5. lecture base de donnée avec vc++ 2005
    Par k_boy dans le forum MFC
    Réponses: 13
    Dernier message: 21/04/2006, 11h48

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