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 :

Aide projet Django


Sujet :

Django Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 17
    Par défaut Aide projet Django
    Bonjour,

    Je dois faire un site, un générateur de documentation façon JavaDoc. Il faudrait parser les fichiers d'un projet .zip pour rechercher les balises que je veux utiliser (souvent @author, @version, @description, ...), les stocker en base pour pouvoir générer une doc sous format web ...

    Cela est-il possible ?
    Et comment pourrai-je faire ? (je veux pas du code mais une façon de faire )

    Et pour commencer, je cherche un tutoriel très bien expliqué qui m'explique comment faire une page inscription/connexion

    Merci d'avance.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 48
    Par défaut
    Django reste du python. Donc, il faut utiliser python.

    En gros, tu dois uploader le fichier via django, qui va l'enregistrer quelque part (sur le DD, dans un tempfile, dans une stringIO, etc...). Puis ensuite, tu travailles dans ce fichier avec la bibliothèque standard de python (ou une lib externe, c'est toi qui voit).

    Pour les fichiers zip, tu as le module zipfile. Ensuite, pour parser, soit tu utilises le module re pour les expressions rationnelles, soit un autre outil dédié pour parser un langage spécifique (là, je n'y connais rien, étant donné que je n'en ai jamais eu besoin).

    Ensuite, tu vas avoir un tas de données stockés dans un dictionnaire/chaine/tuple/n'importe quelle autre structure, et tu vas transmettre tout cela à Django qui va enregistrer ces données dans la BDD.

    Pour gérer la génération de la doc en html, je n'en ai aucune idée, mais je suis quasi-sûr que c'est possible.


    Pour le deuxième point, l'inscription, tu as plusieurs possibilités. Personnellement, j'utilise le système d'authentification de Django. J'ignore si il existe un tutoriel là-dessus, mais la documentation est relativement explicite.

    En gros, voilà comment ça se passe.
    Tu as une vue qui va générer un formulaire pour l'inscription (il me semble que Django a des vues pré-crées pour ce formulaire. Faut aller voir les static views). L'utilisateur va remplir les champs nécessaires, puis renvoyer les données via POST. Toi, tu vas récupérer ces données pour créer l'utilisateur (après vérification des données envoyées, bien entendu).
    Ensuite, pour la connexion, c'est le même principe, une vue avec un champs login et password. On envoie le tout à Django, il vérifie si l'utilisateur existe, et hop, il est connecté.
    Tout ça, c'est le principe de base. Après, tu peux avoir un système plus sophistiqué, avec envoi d'email avec un lien temporaire pour confirmer l'utilisateur (comme sur le forum de developpez.net), des captchas, ou n'importe quoi d'autre. Mais c'est un poil plus compliqué à mettre en place, et il faut aller à l'essentiel au départ.

  3. #3
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Bonjour,

    des outils de géneration de documentation existe déjà, regarde epydoc par exemple.

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 17
    Par défaut
    Merci pour vos réponses détaillées, je vais essayer de m'y mettre et si j'ai des questions ou difficultés je vous re-contactes.


    Edit : Donc après quelques heures de recherche et de tentatives, je n'arrive pas à Uploader un fichier, je vous demande de l'aide ?

    J'ai trouver des bouts de code, et je comprend pas trop la doc, je viens à peine de commence le Python/Django.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 17
    Par défaut
    Voici mon code :
    Mon projet s'appelle : Django
    et le nom de l'application est : upload

    voici mon views.py :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    from django.http import HttpResponseRedirect
    from django.shortcuts import render_to_response
     
     
    # Imaginary function to handle an uploaded file.
    from django import forms
     
    class UploadFileForm(forms.Form):
        title = forms.CharField(max_length=50)
        file  = forms.FileField()
     
    def upload_file(request):
        if request.method == 'POST':
            form = UploadFileForm(request.POST, request.FILES)
            if form.is_valid():
                handle_uploaded_file(request.FILES['file'])
                return http.HttpResponseRedirect('/')
        else:
            form = UploadFileForm()
        return render_to_response('index.html', {'form': form})
     
    def handle_uploaded_file(f):
        destination = open('/Users/Nassim/DEV/Django-1.3.1/build/scripts-2.6/Django/media'+f.name, 'wb+')
        for chunk in f.chunks():
            destination.write(chunk)
        destination.close()
     
    def success(request):
    	return render_to_response('upload_success.html')
    Voici index.html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <html>
     
    <title>Upload</title>
     
    <h1> Bonjour </h1>
    <h2> Upload de fichier </h2>
    <form enctype="multipart/form-data" method="POST" action=".">
     <table>
    {{ form }}
    </table>
    <input type="submit" name="submit" value="Upload" />
    </form>
    </html>
    et voici le url.py :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from django.conf.urls.defaults import patterns, include, url
     
    # Uncomment the next two lines to enable the admin:
    # from django.contrib import admin
    # admin.autodiscover()
     
    urlpatterns = patterns('',
                           url(r'^$', 'Django.upload.views.upload_file', name='home'),
    		       url(r'^upload_success$', 'Django.upload.views.success', name='success'),
    )

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 17
    Par défaut
    Vraiment personne pour m'aider ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. aide projet Mastermind
    Par 0coco0 dans le forum Langage
    Réponses: 14
    Dernier message: 14/01/2008, 09h48
  2. Aide projet Firefox
    Par KKshi666 dans le forum C++
    Réponses: 10
    Dernier message: 20/11/2006, 14h25
  3. Demande d'aide - Projet professionnel ambigu
    Par makechange dans le forum Emploi
    Réponses: 5
    Dernier message: 08/09/2006, 13h34
  4. Besoin d'aide projet d'info : la bonne paye sur C++ Builder.
    Par timsupra dans le forum C++Builder
    Réponses: 18
    Dernier message: 25/04/2006, 10h24
  5. aide projet dev
    Par Nickname dans le forum Langage
    Réponses: 16
    Dernier message: 06/02/2006, 13h03

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