madamasterclass.com

📔 Exemples d'applications

Applications pratiques du framework Pyramid.

1. Application de gestion de tâches

Une application de gestion de tâches permet aux utilisateurs de créer, modifier et supprimer des tâches. Voici un exemple de code pour définir une tâche dans Pyramid :


from pyramid.view import view_config
from pyramid.response import Response

@view_config(route_name='add_task', request_method='POST')
def add_task(request):
    task_name = request.POST.get('task_name')
    # Logique pour ajouter la tâche à la base de données
    return Response(f'Tâche "{task_name}" ajoutée avec succès!')

2. Blog personnel

Un blog personnel permet aux utilisateurs de publier des articles et de commenter. Voici un exemple de vue pour afficher les articles :


@view_config(route_name='blog')
def blog_view(request):
    articles = get_all_articles()  # Fonction pour récupérer tous les articles
    return {'articles': articles}

3. API RESTful

Pyramid peut également être utilisé pour créer une API RESTful. Voici comment définir une route pour récupérer des utilisateurs :


@view_config(route_name='get_users', renderer='json')
def get_users(request):
    users = retrieve_users()  # Fonction pour récupérer les utilisateurs
    return {'users': users}

4. Système de gestion de contenu (CMS)

Un CMS permet aux utilisateurs de gérer le contenu de leurs sites web. Voici un exemple de code pour enregistrer un nouvel article :


@view_config(route_name='save_article', request_method='POST')
def save_article(request):
    title = request.POST.get('title')
    content = request.POST.get('content')
    # Logique pour enregistrer l'article dans la base de données
    return Response(f'Article "{title}" enregistré avec succès!')

5. Conclusion

Pyramid est un framework puissant et flexible qui permet de développer une grande variété d'applications web, allant des blogs personnels aux API RESTful. Grâce à sa modularité et à sa simplicité, il est particulièrement adapté aux projets de toutes tailles. En explorant ces exemples d'applications, vous pouvez voir comment Pyramid peut être utilisé pour répondre à des besoins spécifiques en matière de développement web.

Application de gestion de tâches
📔 Créez une application simple de gestion de tâches avec Pyramid.
1. Objectif de l'activité

L'objectif de cette activité est de créer une application de gestion de tâches simple en utilisant le framework Pyramid. Les utilisateurs pourront ajouter, visualiser et supprimer des tâches. Vous apprendrez à gérer les routes, les vues et à interagir avec les données.

2. Étapes de création

Suivez les étapes ci-dessous pour créer votre application de gestion de tâches :

  1. Installation de Pyramid : Assurez-vous que Pyramid est installé. Si ce n'est pas le cas, exécutez :
  2. pip install "pyramid"
            
  3. Création d'un nouveau projet : Utilisez le cookiecutter pour créer votre projet :
  4. cookiecutter gh:Pylons/pyramid-cookiecutter-starter
            
  5. Accédez au répertoire de votre projet :
  6. cd nom_du_projet
            

3. Structure du projet

Votre projet devrait avoir la structure suivante :

    nom_du_projet/
    ├── __init__.py
    ├── views.py
    ├── templates/
    │   └── tasks.html
    └── development.ini
    

Créez un dossier templates pour stocker le fichier HTML des tâches.

4. Gestion des tâches

Dans le fichier views.py, ajoutez le code suivant pour gérer les tâches :


from pyramid.view import view_config
from pyramid.response import Response

tasks = []  # Liste pour stocker les tâches

@view_config(route_name='tasks', renderer='templates/tasks.html')
def tasks_view(request):
    # Récupérer les tâches pour affichage
    return {'tasks': tasks}

@view_config(route_name='add_task', request_method='POST')
def add_task(request):
    task_name = request.POST.get('task_name')
    tasks.append(task_name)  # Ajouter la tâche à la liste
    # Logique pour rediriger vers la vue des tâches
    return Response(f'Tâche "{task_name}" ajoutée avec succès!')

    

Créez également le fichier tasks.html dans le dossier templates avec le code suivant :


<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Gestion de Tâches</title>
</head>
<body>
    <h1>Liste des Tâches</h1>
    <form action="/add_task" method="post">
        <input type="text" name="task_name" placeholder="Nouvelle tâche" required>
        <input type="submit" value="Ajouter">
    </form>
    <ul>
        % for task in tasks:
            <li>{{ task }}</li>
        % endfor
    </ul>
</body>
</html>

    

5. Test de l'application

Pour tester votre application :

  1. Ouvrez le fichier __init__.py et configurez la route pour les tâches :
  2. config.add_route('tasks', '/tasks')
            
  3. Ajoutez également la route pour ajouter une tâche :
  4. config.add_route('add_task', '/add_task')
            
  5. Exécutez votre application avec :
  6. pserve development.ini
            
  7. Visitez http://localhost:6543/tasks dans votre navigateur pour voir votre application de gestion de tâches.

6. Conclusion

Dans cette activité, vous avez appris à créer une application de gestion de tâches simple avec Pyramid. Vous avez configuré les routes, créé des vues pour afficher et ajouter des tâches, et testé votre application. Ces compétences sont fondamentales pour le développement d'applications web interactives. N'hésitez pas à ajouter des fonctionnalités supplémentaires, comme la possibilité de supprimer des tâches ou de les marquer comme complètes.

Blog personnel
📔 Créez un blog personnel simple avec Pyramid.
1. Objectif de l'activité

L'objectif de cette activité est de créer un blog personnel simple en utilisant le framework Pyramid. Les utilisateurs pourront publier des articles, visualiser les articles existants et commenter. Vous apprendrez à gérer les routes, les vues et à interagir avec les données.

2. Étapes de création

Suivez les étapes ci-dessous pour créer votre blog personnel :

  1. Installation de Pyramid : Assurez-vous que Pyramid est installé. Si ce n'est pas le cas, exécutez :
  2. pip install "pyramid"
            
  3. Création d'un nouveau projet : Utilisez le cookiecutter pour créer votre projet :
  4. cookiecutter gh:Pylons/pyramid-cookiecutter-starter
            
  5. Accédez au répertoire de votre projet :
  6. cd nom_du_projet
            

3. Structure du projet

Votre projet devrait avoir la structure suivante :

    nom_du_projet/
    ├── __init__.py
    ├── views.py
    ├── templates/
    │   └── blog.html
    └── development.ini
    

Créez un dossier templates pour stocker le fichier HTML du blog.

4. Gestion des articles

Dans le fichier views.py, ajoutez le code suivant pour gérer les articles de blog :


from pyramid.view import view_config
from pyramid.response import Response

articles = []  # Liste pour stocker les articles

@view_config(route_name='blog', renderer='templates/blog.html')
def blog_view(request):
    # Récupérer les articles pour affichage
    return {'articles': articles}

@view_config(route_name='add_article', request_method='POST')
def add_article(request):
    title = request.POST.get('title')
    content = request.POST.get('content')
    articles.append({'title': title, 'content': content})  # Ajouter l'article à la liste
    # Logique pour rediriger vers la vue du blog
    return Response(f'Article "{title}" ajouté avec succès!')

    

Créez également le fichier blog.html dans le dossier templates avec le code suivant :


<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Blog Personnel</title>
</head>
<body>
    <h1>Articles du Blog</h1>
    <form action="/add_article" method="post">
        <input type="text" name="title" placeholder="Titre de l'article" required>
        <br>
        <textarea name="content" placeholder="Contenu de l'article" required></textarea>
        <br>
        <input type="submit" value="Publier">
    </form>
    <ul>
        % for article in articles:
            <li><h2>{{ article.title }}</h2><p>{{ article.content }}</p></li>
        % endfor
    </ul>
</body>
</html>

    

5. Test de l'application

Pour tester votre application :

  1. Ouvrez le fichier __init__.py et configurez la route pour le blog :
  2. config.add_route('blog', '/blog')
            
  3. Ajoutez également la route pour ajouter un article :
  4. config.add_route('add_article', '/add_article')
            
  5. Exécutez votre application avec :
  6. pserve development.ini
            
  7. Visitez http://localhost:6543/blog dans votre navigateur pour voir votre blog personnel.

6. Conclusion

Dans cette activité, vous avez appris à créer un blog personnel simple avec Pyramid. Vous avez configuré les routes, créé des vues pour afficher et ajouter des articles, et testé votre application. Ces compétences sont essentielles pour le développement d'applications web interactives. N'hésitez pas à explorer des fonctionnalités supplémentaires, comme la possibilité de commenter les articles ou d'ajouter des catégories.

API RESTful
📔 Créez une API RESTful simple avec Pyramid.
1. Objectif de l'activité

L'objectif de cette activité est de créer une API RESTful simple en utilisant le framework Pyramid. Cette API permettra de gérer des utilisateurs, avec des opérations pour récupérer, ajouter, mettre à jour et supprimer des utilisateurs. Vous apprendrez à configurer les routes et à manipuler les données au format JSON.

2. Étapes de création

Suivez les étapes ci-dessous pour créer votre API RESTful :

  1. Installation de Pyramid : Assurez-vous que Pyramid est installé. Si ce n'est pas le cas, exécutez :
  2. pip install "pyramid"
            
  3. Création d'un nouveau projet : Utilisez le cookiecutter pour créer votre projet :
  4. cookiecutter gh:Pylons/pyramid-cookiecutter-starter
            
  5. Accédez au répertoire de votre projet :
  6. cd nom_du_projet
            

3. Structure du projet

Votre projet devrait avoir la structure suivante :

    nom_du_projet/
    ├── __init__.py
    ├── views.py
    ├── development.ini
    

Aucune structure de dossier supplémentaire n'est nécessaire pour cette API simple.

4. Gestion des utilisateurs

Dans le fichier views.py, ajoutez le code suivant pour gérer les utilisateurs :


from pyramid.view import view_config
from pyramid.response import Response
import json

users = []  # Liste pour stocker les utilisateurs

@view_config(route_name='get_users', renderer='json')
def get_users(request):
    # Récupérer la liste des utilisateurs
    return users

@view_config(route_name='add_user', request_method='POST', renderer='json')
def add_user(request):
    user_data = json.loads(request.body)  # Charger les données JSON
    users.append(user_data)  # Ajouter l'utilisateur à la liste
    # Retourner un message de succès
    return {'message': 'Utilisateur ajouté avec succès!', 'user': user_data}

@view_config(route_name='delete_user', request_method='DELETE', renderer='json')
def delete_user(request):
    user_id = request.matchdict['id']
    # Supprimer l'utilisateur par ID
    for user in users:
        if user.get('id') == user_id:
            users.remove(user)
            return {'message': 'Utilisateur supprimé avec succès!'}
    return Response(status=404, json={'message': 'Utilisateur non trouvé'})

    

5. Test de l'API

Pour tester votre API :

  1. Ouvrez le fichier __init__.py et configurez les routes pour l'API :
  2. config.add_route('get_users', '/users')
            
  3. Ajoutez également les routes pour ajouter et supprimer des utilisateurs :
  4. config.add_route('add_user', '/users')
    config.add_route('delete_user', '/users/{id}')
            
  5. Exécutez votre application avec :
  6. pserve development.ini
            
  7. Utilisez un outil comme Postman ou curl pour tester votre API :
    • Pour ajouter un utilisateur :
    • curl -X POST http://localhost:6543/users -d '{"id": "1", "name": "John Doe"}' -H "Content-Type: application/json"
                      
    • Pour récupérer tous les utilisateurs :
    • curl http://localhost:6543/users
                      
    • Pour supprimer un utilisateur :
    • curl -X DELETE http://localhost:6543/users/1
                      

6. Conclusion

Dans cette activité, vous avez appris à créer une API RESTful simple avec Pyramid. Vous avez configuré les routes, créé des vues pour gérer les utilisateurs, et testé votre API. Ces compétences sont essentielles pour le développement d'applications web modernes. N'hésitez pas à étendre les fonctionnalités de l'API, comme l'ajout de l'authentification ou la gestion des erreurs.

Système de gestion de contenu (CMS)
📔 Créez un système de gestion de contenu simple avec Pyramid.
1. Objectif de l'activité

L'objectif de cette activité est de créer un système de gestion de contenu (CMS) simple en utilisant le framework Pyramid. Ce CMS permettra aux utilisateurs de créer, visualiser, modifier et supprimer des articles. Vous apprendrez à gérer les routes, les vues et à interagir avec les données.

2. Étapes de création

Suivez les étapes ci-dessous pour créer votre CMS :

  1. Installation de Pyramid : Assurez-vous que Pyramid est installé. Si ce n'est pas le cas, exécutez :
  2. pip install "pyramid"
            
  3. Création d'un nouveau projet : Utilisez le cookiecutter pour créer votre projet :
  4. cookiecutter gh:Pylons/pyramid-cookiecutter-starter
            
  5. Accédez au répertoire de votre projet :
  6. cd nom_du_projet
            

3. Structure du projet

Votre projet devrait avoir la structure suivante :

    nom_du_projet/
    ├── __init__.py
    ├── views.py
    ├── templates/
    │   └── cms.html
    └── development.ini
    

Créez un dossier templates pour stocker le fichier HTML du CMS.

4. Gestion des contenus

Dans le fichier views.py, ajoutez le code suivant pour gérer les articles :


from pyramid.view import view_config
from pyramid.response import Response
import json

articles = []  # Liste pour stocker les articles

@view_config(route_name='cms', renderer='templates/cms.html')
def cms_view(request):
    # Récupérer les articles pour affichage
    return {'articles': articles}

@view_config(route_name='add_article', request_method='POST', renderer='json')
def add_article(request):
    article_data = json.loads(request.body)  # Charger les données JSON
    articles.append(article_data)  # Ajouter l'article à la liste
    # Retourner un message de succès
    return {'message': 'Article ajouté avec succès!', 'article': article_data}

@view_config(route_name='delete_article', request_method='DELETE', renderer='json')
def delete_article(request):
    article_id = request.matchdict['id']
    # Supprimer l'article par ID
    for article in articles:
        if article.get('id') == article_id:
            articles.remove(article)
            return {'message': 'Article supprimé avec succès!'}
    return Response(status=404, json={'message': 'Article non trouvé'})

    

Créez également le fichier cms.html dans le dossier templates avec le code suivant :


<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CMS</title>
</head>
<body>
    <h1>Gestion des Articles</h1>
    <form action="/add_article" method="post">
        <input type="text" name="id" placeholder="ID de l'article" required>
        <br>
        <input type="text" name="title" placeholder="Titre de l'article" required>
        <br>
        <textarea name="content" placeholder="Contenu de l'article" required></textarea>
        <br>
        <input type="submit" value="Ajouter">
    </form>
    <ul>
        % for article in articles:
            <li><h2>{{ article.title }}</h2><p>{{ article.content }}</p></li>
        % endfor
    </ul>
</body>
</html>

    

5. Test du CMS

Pour tester votre CMS :

  1. Ouvrez le fichier __init__.py et configurez les routes pour le CMS :
  2. config.add_route('cms', '/cms')
            
  3. Ajoutez également les routes pour ajouter et supprimer des articles :
  4. config.add_route('add_article', '/add_article')
    config.add_route('delete_article', '/articles/{id}')
            
  5. Exécutez votre application avec :
  6. pserve development.ini
            
  7. Visitez http://localhost:6543/cms dans votre navigateur pour voir votre CMS.

6. Conclusion

Dans cette activité, vous avez appris à créer un système de gestion de contenu (CMS) simple avec Pyramid. Vous avez configuré les routes, créé des vues pour gérer les articles, et testé votre CMS. Ces compétences sont essentielles pour le développement d'applications web interactives. N'hésitez pas à explorer des fonctionnalités supplémentaires, comme la possibilité de modifier ou de commenter les articles.

Forum(s) associé(s)

Page: