<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.phobos-net.fr/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.phobos-net.fr/feed.php">
        <title>wikinotes</title>
        <description></description>
        <link>https://wiki.phobos-net.fr/</link>
        <image rdf:resource="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-05-06T21:22:00+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_application_factory?rev=1753528543&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/application-fichier-simple?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/controle-des-permissions?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/gerer_revisions_fichiers_binaires?rev=1727983329&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mysql_connect?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/application_multilingue?rev=1754890535&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico">
        <title>wikinotes</title>
        <link>https://wiki.phobos-net.fr/</link>
        <url>https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T08:09:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:architecture_projet_flask</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff</link>
        <description>dev python flask web api

Flask

:TODO_DOCUPDATE:

Flask n&#039;impose aucune arborescence, selon les besoins on peut opter pour une application monolithique ou modulaire.

Application monolithique

Pour les petit projets, les tests ou les tutoriaux, on utilise généralement un simple module Python qui se charge d&#039; instancier directement l&#039;objet Flask. Cette approche monolithique permet de coder rapidement une preuve de concept (PoC), un prototype par exemple.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T09:26:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:demarrer_application</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff</link>
        <description>dev python framework flask

Flask : Démarrer l&#039;application depuis la CLI

La commande flask permet notamment d&#039;exécuter l&#039;application sur un serveur de développement intégré au framework ou de démarrer un shell interactif dans le contexte de l&#039;application.

Par défaut la commande tente d&#039;importer un module ou un paquetage nommé</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-10T06:09:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:templates</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff</link>
        <description>dev python flask templates jinja2

Flask : Utilisation des templates

Généralités

Grossièrement, le template est une page web à trous. Il contient des sections invariantes en HTML/javascript directement interprétables par le navigateur web et des sections dynamiques ou non remplies désignées</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-10T13:07:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:flask_migrate</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff</link>
        <description>dev python flask extension db migrate migration

Flask : Gérer les migrations avec l&#039;extension Flask-Migrate

Présentation

Flask-Migrate s&#039;appuie sur Alembic pour gérer les migrations de la base de données gérée par l&#039;ORM (SQLAlchemy). Ainsi le modèle de données définit dans l&#039;application Flask peut être amendé/corrigé, c&#039;est l&#039;extension Flask-Migrate qui se chargera de créer les script de migrations capables de modifier le schéma de la base de données préexistante pour que le nouveau modèle de…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-02T23:08:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:tutoriel:webstore</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff</link>
        <description>dev python flask sqlalchemy tutoriel

Exemple d&#039;Application web avec Flask et le module flask_sqlalchemy

On crée une petite application web “webstore” qui stocke des articles dans différents magasins

Initialisation du projet, création d&#039;un dépôt et d&#039;un environnement virtuel


cd ~/dev
git init webstore

cd ~/dev/webstore
python3 -m venv .venv</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:android-studio:anatomie-projet</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff</link>
        <description>dev android

Principaux éléments d&#039;un projet Android

Dans la vue Android, quand on déploie Application:

	*  Le fichier manifest/AndroidManifest.xml fixe les principales caractéristiques de l&#039; application Android notamment ses différentes activités, l&#039;activité initiale, les périphériques/ressources nécessaires: ex réseau, carte SD etc.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_application_factory?rev=1753528543&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-26T11:15:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_application_factory</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_application_factory?rev=1753528543&amp;do=diff</link>
        <description>dev python web flask

Flask : Usage de la fonction create_app

La création de l&#039;application Flask peut se faire de plusieurs manières. L&#039;utilisation de l&#039;application factory est l&#039;approche recommandée pour les projets qui gagent en envergure. Elle permet de concevoir une application plus facilement extensible et maintenable.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-03T10:43:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_one-to-many</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff</link>
        <description>dev python flask orm db sqlalchemy

:TODO_DOCUPDATE:

Flask-SQLAlchemy : relation one-to-many

Quelques notes à propos de l&#039;implémentation d&#039;une relation un à plusieurs (one to many) avec l&#039;extension Flask-SQLAlchemy.

Pour illustrer le concept on prend un exemple rudimentaire :


MCD via diagramme UML</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-05T10:33:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:frameworks:flask:integrer-documentation-sphinx-dans-application-flask</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff</link>
        <description>dev python framework sphinx flask documentation

Intégrer une documentation générée par Sphinx à l&#039;application Flask

:TODO:

Sphinx permet de générer de la documentation dans différents formats. Ici on souhaite produire de la documentation au format HTML et la servir via l&#039;application Flask.

Pour que Flask soit en mesure de servir les fichiers, on configurera Sphinx pour qu&#039;il génère les fichiers de documentation dans un sous-répertoire du dossier</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T12:55:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:definir_commande_cli</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff</link>
        <description>dev python flask cli commande

Flask : Définir une commande CLI

Le framework Flask s&#039;appuie sur le paquetage Python Click pour la gestion de la ligne de commande.

On utilise les décorateurs pour déclarer une commande. Ci-dessous un exemple simple de commande sans argument :


from flask import Flask

app = Flask(__name__)

@app.cli.command(&quot;version&quot;)
def version():
  &quot;&quot;&quot;Show application version.&quot;&quot;&quot; 
  print(&quot;0.0.1&quot;)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-10T08:22:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:routage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff</link>
        <description>dev python flask routes

Flask : routage

A propos des routes

Définir une URL ayant un sens pour l&#039;utilisateur est préférable en général. Les deux URL ci-dessous peuvent produire le même résultat :

	*  &lt;https://www.example.com/script?action=33257&gt;
	*  &lt;https://www.example.com/create/user&gt;

Dans le second cas, on peut directement comprendre le sens de l&#039;action à la lecture de l&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-28T18:38:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:authentification-utilisateur-via-flask-login</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff</link>
        <description>dev python flask authentification

:TODO:

Flask : Gérer l&#039;authentification avec Flask-Login

Charger l&#039;environnement virtuel Python du projet et installer le paquetage Flask-Login :


pip install Flask-Login


Création d&#039;un Blueprint

On va s&#039;appuyer sur le système de Blueprint de Flask afin de pouvoir regrouper les ressources et fonctionnalités liées à l&#039;authentification. De cette manière les templates, routes, modèles, formulaires etc peuvent être regroupés au sein d&#039;un package Python puis fa…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-20T11:03:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:flask_maintenance</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff</link>
        <description>dev python framework flask extension

:TODO_DOCUPDATE:

Flask: extension Flask-Maintenance

L&#039;extensions Flask-Maintenance permet de bloquer temporairement les requêtes entrantes (frontend).

Pour illustrer son fonctionnement, on utilise ici une application Flask monolithique minimale. Depuis votre environnement virtuel Python :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-06T10:13:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:tutoriels:ecrire_un_module_en_go</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff</link>
        <description>dev module tutoriel go

Écrire un module en Go

Ce tutoriel propose de créer deux modules:

	*  Le premier sera une bibliothèque prévue pour être importée par d&#039;autres bibliothèques ou applications ;
	*  Le second est une application appelante utilisant le premier.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-12T10:26:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_formulaires_wtforms</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff</link>
        <description>dev python flask web formulaire

:TODO_DOCUPDATE:

Flask : Créer des formulaires via Flask-WTF

WTForms est une bibliothèque Python permettant de gérer des formulaires web via des Classes et objets en POO.

Ici on utilise le paquet Flask-WTF qui intègre la bibliothèque WTForms au micro framework Flask.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-22T15:31:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_agregation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff</link>
        <description>dev python sql sqlalchemy relation

Flask-SQLAlchemy : Définir une relation d&#039;agrégation

La relation d&#039;agrégation est une forme particulière de relation one-to-many. C&#039;est une composition sans appartenance : la suppression d&#039;une instance de la classe regroupant les agrégats n&#039;entraine pas la suppression des agrégats.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:generation-des-logs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff</link>
        <description>dev android log logcat

Générer des logs

Sous Android Studio, logcat permet de visualiser les logs générés par le système ou les applications. Pour générer des messages depuis l&#039;application quelques étapes sont nécessaires:

Configuration

Sur les émulateurs cette fonction est active par défaut, par contre sur un périphérique physique, pour que le débogage puisse être utilisé, il faut qu&#039;il soit activé:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/application-fichier-simple?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:tutoriaux:application-fichier-simple</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/application-fichier-simple?rev=1612216289&amp;do=diff</link>
        <description>web framework pyramid tutos

Application web en un fichier

Pyramid permet de créer une application web à partir d&#039;un fichier seul. Mais le framework est également en capacité d&#039;exécuter d&#039;un projet de grande envergure.

WSGI est un standard qui définit comment les application web écrites en Python et hébergées dans les serveurs web peuvent recevoir les requêtes et fournir les réponses.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:tutoriaux:projet-minimal</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff</link>
        <description>dev pyramid framework web tutos

Application Pyramid minimale

La plupart des développements modernes en Python s&#039;appuient sur les paquetages. Ce tutoriel reprend le script hello_world.py et l’intègre dans un  paquetage python au sein d&#039;un projet minimal Pyramid.

A propos des packages le wiki</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-18T16:49:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:esp32:utiliser_convertisseur_analogique_numerique</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff</link>
        <description>riot esp esp32 can adc

Utiliser le pilote ADC de RIOt avec l&#039;ESP32

RIOT propose une abstraction simple pour utiliser les convertisseurs analogiques numériques (CAN ou ADC) intégrés dans la plupart des MCU: le pilote ADC (periph/adc). Cette interface de périphérique est construite autour du concept de lignes (ADC LINES).</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-06T13:47:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:mesurer_consommation_energetique_app</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff</link>
        <description>dev software energie

Mesurer la consommation énergétique d&#039;une application

Dans tous les domaines, on a aujourd&#039;hui conscience que les ressources ne sont pas illimités. Tout processus ou application consomme de  l’énergie électrique, il est possible de quantifier en partie cette consommation.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/controle-des-permissions?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:controle-des-permissions</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/controle-des-permissions?rev=1612216289&amp;do=diff</link>
        <description>dev android permission apk

Contrôler les permissions d&#039;une APK

Les permissions associées à une APK sont déclarées dans le fichier AndroidManifest.xml

Ouvrir le fichier, puis dans la balise &lt;manifest&gt;&lt;/manifest&gt;, avant la balise &lt;appliction&gt;&lt;/application&gt; introduire une balise &lt;uses-permission/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T09:43:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:environnements_virtuels</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff</link>
        <description>dev python virtualenv venv environnement virtuel

Environnements virtuels en Python

Plusieurs solutions existent. Depuis python 3.3 la bibliothèque venv est intégrée, c&#039;est la solution recommandée avec Python3, l&#039;usage de virtualenv est déprécié ou réservé à des besoins spécifiques.

virtualenv</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T13:27:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pip</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff</link>
        <description>dev python pip

pip

pip est un outil de gestion des bibliothèques externes Python. Il permet:

	*  Installer les bibliothèques et les dépendances.
	*  Mettre à jour/downgrader les versions.
	*  Facilite le déploiement d&#039;une application en générant un listing des bibliothèques utilisées et leurs versions</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:serveur-audio</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff</link>
        <description>Serveur de son

Utiliser le raspberry en tant que serveur de son grâce au serveur Pulseaudio. Le raspberry sera connecté à la chaine Hifi. Tous les postes du réseau pourront rediriger leurs flux audios sur le serveur pulseaudio du raspberry afin que le son soit joué sur la chaine.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-13T11:24:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:javascript:core:fondamentaux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff</link>
        <description>dev javascript js code

:TODO_DOCUPDATE:

Javascript : Fondamentaux

Javascript a été conçu pour rendre les pages web dynamiques. Il s&#039;intègre et permet d&#039;interagir avec les documents HTML et le CSS.

Un script peut être introduit dans n&#039;importe quelle partie du document</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pygtk:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff</link>
        <description>du boot, pc rendu a Nathalie Barret. Pas de retour utilisateur. Fermeture ticket.

dev python ihm pygtk

IHM pour python avec PyGTK

Présentation générale de la conception d&#039;une application Python utilisant une IHM GTK

	*  Les classes Python modélisent les données métier et intègrent les traitements.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T12:30:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:notes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff</link>
        <description>dev python web flask extensions

Flask : A propos des extensions

Les extensions sont des packages Python ajoutant des fonctionnalités au framework Flask. On liste ici quelques extensions couramment utilisées.

	*  Flask-Admin - Interface d&#039;administration
	*  Flask-Babel - Support de l&#039;internationalisation</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:installer-android-studio</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff</link>
        <description>dev android ide

Installer Android Studio

prérequis

Les prérequis sont listés pour chaque sur la page de téléchargement de l&#039;IDE &lt;https://developer.android.com/studio/?utm_source=android-studio&gt; dans la section “System requirements”. Dans le cas de GNU/Linux, pour la version 3.4 d&#039;android Studio:

	*  GNOME or KDE desktop (Tested on Ubuntu® 14.04 LTS, Trusty Tahr (64-bit distribution capable of running 32-bit applications)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-31T12:47:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:joystick</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff</link>
        <description>dev arduino joystick usb hid

Arduino: Joystick

Il est possible de modifier le firmware de la puce de communication FTDI présente sur la carte Arduino pour qu&#039;elle soit reconnue comme un périphérique USB HID de type joystick. C&#039;est ce que permet de faire le projet UnoJoy d&#039; Alan Chatham.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:nouveau-projet-eclipse</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff</link>
        <description>Nouveau projet Arduino

Création d&#039;un nouveau projet Arduino sous l&#039;IDE Eclipse.

	*  Menu File -&gt; new -&gt; C++ Project
	*  Dans la section Project Type Sélectionner AVR Cross Target Application et Empty. Nommer le projet. Ici nous l&#039;appelons helloWorld.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T12:29:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:configuration</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff</link>
        <description>git dev config configuration

Configuration des dépots Git

La commande git config permet de personnaliser/spécifier le comportement par défaut de git

Afficher la configuration

Pour lister la configuration actuellement définie:


git config --list


Portée des définitions</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/gerer_revisions_fichiers_binaires?rev=1727983329&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-03T19:22:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:gerer_revisions_fichiers_binaires</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/gerer_revisions_fichiers_binaires?rev=1727983329&amp;do=diff</link>
        <description>dev git fichier binaire binary file

:TODO_DOCUPDATE:

Git : Gérer les révisions de fichiers binaires

Pensé avant tout pour gérer les fichiers sources (textes), Git peut également être utilisé pour le versioning de fichiers binaires.

Via le fichier .gitattributes on peut spécifier précisément quelles extensions doivent être considérées comme des fichiers binaires</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:crosstool</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff</link>
        <description>Crosstool

Crosstool est un outil libre écrit par Dan Kegel et placé sous licence GPLv2. Il regroupe un ensemble de scripts permettant de construire une chaine de compilation croisée. Plus complexe à prendre en main qu&#039;une chaine fournie sous forme de binaire telle que ELDK, crosstool apporte cependant plus de souplesse en s&#039;adaptant aux cibles les plus spécifiques, en permettant au developpeur de choisir les versions du compilateur, des bibliothèques et du noyau avec lesquels la chaine sera con…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:qemu</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff</link>
        <description>Qemu

Quick EMUlator est un logiciel sous licence libre GPL écrit par Fabrice Bellard. C&#039;est un émulateur de plateformes matérielles. Le matériel peut être spécifique et coûteux, l&#039;émulation est alors intéressante lors des phases d&#039;apprentissage, de recherche ou de prototypage. Elle facilite également le travail collaboratif: les développeurs peuvent participer au projet sans possèder la plateforme cible.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T09:33:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:environnement_virtuel_avec_git</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff</link>
        <description>dev python venv git

Python : environnement virtuel dans Git

L&#039;environnement virtuel est créé afin de garantir une isolation des dépendances nécessaires au bon fonctionnement du programme Python. Ainsi, les mises à jours des bibliothèques du système ne remplaceront pas les versions nécessaires au bon fonctionnement de l&#039;application.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-15T14:03:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:logging</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff</link>
        <description>Les logs en Python

La bibliothèque standard python intègre un module simple et flexible pour générer ses logs. 

Lorsqu&#039;on utilise directement les fonctions au niveau du module, on utilise en fait le logger par défaut root qui est configuré pour écrire sur la sortie erreur standard.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-20T12:15:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:rust:installer_rust</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff</link>
        <description>dev rust installation

Installer Rust

Installation sous Debian like

Rust s&#039;installe en espace utilisateur, la solution recommandée consiste à exécuter le script disponible en ligne.

Pour une machine sous GNU/Linux :


curl --proto &#039;=https&#039; --tlsv1.2 -sSf https://sh.rustup.rs | sh</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:presentation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff</link>
        <description>dev python pyramid framework

Pyramid

Quelques notes extraites de la documentation 1.6 du framework Pyramid.

Système de template

Pyramid a été pensé pour pourvoir être interfacé facilement avec des programmes de rendus externes ou “renderers”. Des binding existent pour:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:templates</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff</link>
        <description>dev web pyramid template

templates avec pyramid

Pyramid peut s&#039;interfacer avec plusieurs moteurs de templates existants:

	*  Chameleon
	*  Jinja2
	*  Mako

Utiliser Chameleon

Dans l&#039;environnement virtuel python, installer le module pyramid_chameleon:


$ pip install pyramid_chameleon</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:undefined-function-dl</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff</link>
        <description>dev php php7 erreur debug todo

Php7: Fonction dl() indéfinie

Cette erreur a été rencontrée lors de la migration d&#039;une application web fonctionnant normalement sous Apache/ PHP5 vers une version plus récente Apache/PHP7

Le message d&#039;erreur obtenu:


Fatal error: Uncaught Error: Call to undefined function dl() in /srv/opencourrier/web/php/pear/DB.php:710</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mysql_connect?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:undefined-function-mysql_connect</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mysql_connect?rev=1612216289&amp;do=diff</link>
        <description>dev php erreur

Erreur undefined function mysql_connect

Le problème s&#039;est révélé après migration d&#039;une l&#039;application web sur un nouveau serveur.


Fatal error: Uncaught Error: Call to undefined function mysql_connect()


Les fonctions de la famille mysql_* présentent dans PHP 4 et PHP 5 est dépréciées depuis PHP 5.5.0 et retirées sur les version de PHP 7.0</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-14T18:23:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:warning_strtotime</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff</link>
        <description>dev php error warning

PHP: warning retourné par la fonction strtotime()

L&#039;utilisation de la fonction strtotime() provoque l&#039;affichage ou la journalisation d&#039;un warning de la forme:


Error (Warning) strtotime(): It is not safe to rely on the system&#039;s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. W…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T13:03:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:execution_programme_python_depuis_environnement_virtuel</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff</link>
        <description>dev python venv programme execution script

Python : Exécuter un programme basé sur un environnement virtuel

En général, lorsqu&#039;un un script ou un programme Python s&#039;appuie sur des dépendances hors paquetages de la bibliothèque standard on utilise un environnement virtuel Python.

Grossièrement, la création de l&#039; environnement virtuel conduit à dédier un interpréteur Python et créer un environnement dans lequel le programme ou script peut être lancé correctement (modification PATH et PYTHONPATH…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-21T16:27:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:serialisation_json</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff</link>
        <description>dev python json serialisation javascript

:TODO_DOCUPDATE:

Sérialiser un type(classe) quelconque en JSON

Si on tente de sérialiser directement une instance d&#039;une classe de son cru via le module json on obtient en général une erreur :

Dans cet exemple le type Memo est une Classe complexe conçue pour une application Flask et permettant d&#039;enregistrer les données dans une base via l&#039;ORM SQLAlchemy</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/application_multilingue?rev=1754890535&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-11T05:35:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:application_multilingue</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/application_multilingue?rev=1754890535&amp;do=diff</link>
        <description>dev python multilangue internationalisation

:TODO:

Flask : internationalisation de application

Références

	*  &lt;https://www.peterspython.com/fr/blog/construire-un-site-web-multilingue-flask-avec-flask-babel&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-26T13:09:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_gestion_des_configurations</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff</link>
        <description>dev python framework flask

:TODO_DOCUPDATE:

Flask : Gestion des configurations

La classe Config du framework Flask contient une méthode from_object() qui permet de charger une configuration à partir d&#039;un objet Python (une classe ou un module).

Conserver les variables de configuration dans des classes est intéressant pour les raisons suivantes :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-28T18:35:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_sqlalchemy</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff</link>
        <description>dev python orm flask sqlachemy

:TODO_DOCUPDATE:

L&#039;extension Flask-SQLAlchemy

A propos de SQLAlchemy

SQLAlchemy est un ORM (Object-Relational Mapping) il permet de traduire les objets Python en données pouvant être enregistrées dans un SGBD externe. 

Installation

Pour pouvoir utiliser l&#039;extension, installer le module</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T14:56:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:tests_unitaires_via_pytest</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff</link>
        <description>dev python test pytest

:TODO_DOCUPDATE:

Flask : tests unitaires avec pytest

Flask s&#039;appuie sur le framework pytest pour créer et exécuter les tests.

Nomenclature

Par défaut les tests sont regroupés dans le dossier ./tests du projet. Les tests sont des fonctions dont le nom commence par</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff</link>
        <description>dev python jupyter

Jupyter notebook

Le nom Jupyter vient de la contraction des 3 principaux langages utilisés dans le domaine de la data science: Julia, Python et R. L&#039;extension d&#039;un fichier notebook produit par Jupyter est .pynb pour IPython NoteBook, ancien nom du projet Jupyter.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:cross-toolchain:buildroot</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff</link>
        <description>Buildroot

Buildroot facilite la compilation d&#039;un système GNU/Linux embarqué complet. C&#039;est un ensemble de Makefiles et de patchs.

Principales caractéristiques:

	*  Il peut contrôler toutes les étapes de construction du système embarqué: chaine de compilation croisée, fichier système racine, chargeur et images noyaux.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:cross-toolchain:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/start?rev=1612216289&amp;do=diff</link>
        <description>La compilation croisée

Principe

On utilise des outils (on parle de chaine de compilation croisée ou cross toolchain) pour générer des fichiers exécutables par une autre machine (la cible) basée sur une architecture différente.

Application courante: J&#039;utilise mon PC pour générer des programmes qui s&#039;éxecuteront sur une machine ayant de plus faibles ressources: ma raspeberry Pi.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:tutoriaux:fichiers-statiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff</link>
        <description>dev web framework pyramid static

Servir des fichiers statiques avec Pyramid

Voir le tutoriel hello World pour mettre en place le projet initial. Pour servir des fichiers statiques, lors de la configuration de l&#039;application, utiliser la méthode



# conf est une instance de pyramid.conf.Configurator
conf.add_static_view(name=&#039;static&#039;, path=&#039;static&#039;)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-31T09:10:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:activer-contraintes-fk-sqlite-avec-flask-sqlachemy</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff</link>
        <description>dev python web flask sqlalchemy flas-sqlachemy

Flask-SQLAlchemy : Forcer la vérification des contraintes sur une base SQLite3

Notes concernant l&#039;activation des contraintes sur clé étrangère (FK) sur les bases de type SQLite3 utilisées en backend via Flask-SQLAlchemy.

Problématique

Une contrainte de type</description>
    </item>
</rdf:RDF>
