<?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-07T11:03:08+00:00</dc:date>
        <items>
            <rdf:Seq>
                <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/web/chameleon?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&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/telechargement_de_fichier?rev=1730838981&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_many-to-many?rev=1754432187&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&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/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/ipython?rev=1612216289&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/python/ressources?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&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/web/ajax?rev=1740498614&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/esp/esp32/entrees-analogiques?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/lua/opentx/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/classes?rev=1672784666&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&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/installer_interpreteurs?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/blueprints?rev=1775377302&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/unittest/start?rev=1658346668&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/python/flask/extensions/flask_migrate?rev=1757509654&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/programmation-evenementielle?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/traitement-logiciel-des-rebonds?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-eclipse?rev=1612216289&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/bash/debogage?rev=1669211307&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/termcap_et_terminfo?rev=1652554330&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/clients_git_windows?rev=1681314922&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/html/favicon?rev=1731151907&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?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/php/debogage?rev=1751211477&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?rev=1612216289&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/python/mqtt?rev=1671580474&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/uml/agregation-composition?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/uml/editeurs?rev=1697473199&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/web/image-interactive?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/normaliser_texte?rev=1754153951&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&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/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/generer_graphique_matplotlib?rev=1619192222&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/python/pygtk/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/installation?rev=1697973858&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&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/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&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/flask/extensions/flask-sqlalchemy/afficher-les-requetes?rev=1756406120&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/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/web/chameleon?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:web:chameleon</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/chameleon?rev=1612216289&amp;do=diff</link>
        <description>web python template chameleon pyramid

Moteur de template Chameleon

Chameleon est un moteur de template Python. Il permet de générer des documents textes formatés par des balises(XML/HTML) à partir de modèles (les templates). Chameleon accepte en entrée des documents XML/HTML bien formés (le modèle ou template) et via un système d&#039;attributs (les déclarations ou statements) il génère un fichier texte XML qui n&#039;est pas nécessairement bien formé.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-04T08:53:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp32:micropython</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&amp;do=diff</link>
        <description>dev esp32 micropython todo

ESP32: Micropython

MicroPython est une implémentation légère et compacte de l&#039; interpréteur Python 3. Il inclus un petit sous ensemble de la bibliothèque standard Python et est optimisé pour s&#039;exécuter sur microcontrôleur ( tel qu&#039;un ESP32) ou en environnement contraint (en ressources matérielles). Le cœur Micropython utilise 256Ko d&#039;espace en flash et 16 Ko de RAM.</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/telechargement_de_fichier?rev=1730838981&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-05T20:36:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:telechargement_de_fichier</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/telechargement_de_fichier?rev=1730838981&amp;do=diff</link>
        <description>dev python flask web upload download file fichier

Flask : Upload/Download de fichiers

Les fichiers transmis sont placés dans un espace temporaire en mémoire ou dans un dossier (qui peut être obtenu via tempfile.gettempdir()). Par défaut Flask ne limite pas la taille des fichiers transmis par l&#039;utilisateur mais on peut la définir via la variable</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-27T15:25:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:introduction</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff</link>
        <description>dev python sphinx documentation

Sphinx : Générer de la documentation

Sphinx est un programme dédié à la génération de tout type de documentation associée à un projet:

	*  La documentation de référence du code (documentation des modules, classes et APIs);
	*  les tutoriaux (documentation à objectifs pédagogiques);</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_many-to-many?rev=1754432187&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-05T22:16:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_many-to-many</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_many-to-many?rev=1754432187&amp;do=diff</link>
        <description>dev python flask orm db sqlalchemy

Flask-SQLAlchemy : Mise en œuvre d&#039;une relation many-to-many

:TODO:

Suppression des enregistrements orphelins dans une association many-to-many

Un cas typique est la gestion des étiquettes (tags) ou des mots-clés (keywords).

Dans cet exemple on souhaite pouvoir associer des mots-clés à des jeux :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T16:44:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:structures_de_controle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff</link>
        <description>dev python

Structures de contrôle

Structures conditionnelles

if


if a_condition:
    # bloc a exécuter lorsque a_condition est vraie
elif other_condition:
    # bloc a exécuter lorsque a condition est fausse
    # et other_condition est vraie
else:
    # bloc a exécuter si les conditions précédentes sont fausses.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-02T09:13:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_chaines_de_caracteres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&amp;do=diff</link>
        <description>dev python caracteres

:TODO_DOCUPDATE:

Python: Les chaînes de caractères

En python caractère et chaîne de caractères sont des objets de type str. Les chaînes de caractères sont des objets immuables: une fois crées elles ne peuvent plus être modifiées. Les méthodes permettant d&#039;altérer les chaînes retournent donc un nouvel objet str.</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/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/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-11T08:51:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:exemples:recherche_interactive</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff</link>
        <description>dev python flask recherche

Flask : Recherche dynamique basé sur HTMX

:TODO:

Références

	*  Recherche dynamique avec HTMX (htmx.org)
	*  Mise en œuvre d&#039;une recherche rapide avec Flask, Bulma et HTMX
	*  vidéo Créer une barre de recherche rapide avec Flask et HTMX (chaine Pretty Printed, youtube.com)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?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:uno-programmateur-isp</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?rev=1612216289&amp;do=diff</link>
        <description>dev arduino isp

Uno en programmateur ISP pour ATtiny85

On utilise la carte Arduino Uno comme programmateur pour flasher des ATtiny85.

Lancer IDE Arduino et vérifier la configuratation

	*  Outils -&gt; Type de carte -&gt; Arduino Uno
	*  Outils -&gt; Programmateur -&gt; Arduino as ISP</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-12T16:34:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:installer_godoc</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff</link>
        <description>dev go golang godoc

Installer godoc

:TODO_DOCUPDATE:

L&#039;installation du binaire godoc se fera dans votre environnement de travail (working directory) désigné par la variable d&#039;environnement GOPATH :


# Afficher la valeur de GOPATH
go env | grep GOPATH

# Installer godoc
go install golang.org/x/tools/cmd/godoc@latest</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?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:gestion-des-arguments</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?rev=1612216289&amp;do=diff</link>
        <description>dev python argument option

Python: Gestion des arguments d&#039;appel de script

Le module argparse fait partit de la bibliothèque standard python. Il contient tout ce qu&#039;il faut pour gérer les arguments passés au script via la ligne de commande. Il remplace l&#039;ancien module optparse</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/ipython?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:ipython</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/ipython?rev=1612216289&amp;do=diff</link>
        <description>dev python ipython

Ipython: Interpréteur python

ipython est un interpréteur python interactif disposant de fonctionnalités telles que  l&#039;introspection, une syntaxe additionnelle, la complétion et un historique riche. Ipython3 est la dernière version monolithique d&#039;ipython. Depuis 2014 le projet a été scindé et toutes les parties indépendantes du langage python sont regroupées au sein du projet Jupiter notebook.</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/python/ressources?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:ressources</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/ressources?rev=1612216289&amp;do=diff</link>
        <description>dev python ressources

Python: Ressources

Quelques liens et ressources à propos du langage python:

	*  Traduction de la documentation officielle python3 &lt;https://docs.python.org/fr/3/&gt;
	*  Index des PEPs &lt;http://legacy.python.org/dev/peps/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/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:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/start?rev=1612216289&amp;do=diff</link>
        <description>dev python

Python: introduction

Quelques notes à propos des spécificités du langage Python basées sur mes écueils.

Python a été conçu avec l&#039;objectif d&#039;être lisible, compréhensible faciitant son accès et les échanges de codes. Les choix de conceptions ont été guidés par pragmatisme et non par dogmatisme.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-21T08:33:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:rust:edi_rust</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&amp;do=diff</link>
        <description>dev rust ide edi

:TODO_DOCUPDATE:

EDIs Rust

Rust est pris en charge dans plusieurs environnements de développement intégrés (IDE) notamment :

	*  VIm
	*  Sublime Text 4
	*  VS Code

Références

	*  Les outils pour Rust (rust-lang.org)</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/web/ajax?rev=1740498614&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-25T15:50:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:web:ajax</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/ajax?rev=1740498614&amp;do=diff</link>
        <description>dev web ajax

:TODO_DOCUPDATE:

La méthode AJAX

AJAX pour Asynchronous JavaScript And XML est une méthode qui permet de mettre à jour une partie d&#039;une page web sans avoir à la recharger dans son intégralité. Cette méthode est utilisée pour produire des sites web dynamiques et des applications web riches</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/esp/esp32/entrees-analogiques?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:esp:esp32:entrees-analogiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/entrees-analogiques?rev=1612216289&amp;do=diff</link>
        <description>dev hardware esp32 can

ESP32: les entrées analogiques

Plusieurs broches possèdent un convertisseur analogique numérique CAN désigné ADC (Anolog to Digital Converter).


from machine import Pin, ADC
adc = ADC(Pin(33))
adc.read()
adc.read()


Références

	*  &lt;http://docs.micropython.org/en/latest/esp32/quickref.html#adc-analog-to-digital-conversion&gt;
	*  &lt;https://forum.micropython.org/viewtopic.php?t=3769&gt;</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/lua/opentx/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:lua:opentx:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/lua/opentx/start?rev=1612216289&amp;do=diff</link>
        <description>dev opentx lua

Lua sous OpenTX

OpenTX depuis la version 2.0 utilise les scripts Lua pour étendre ses fonctionnalités. L&#039;utilisateur peut écrire et tester les scripts via le simulateur puis les déposer sur la carte SD pour qu&#039;ils soient exécutes sur la radiocommande.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-07T09:31:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:classe_abstraite</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff</link>
        <description>dev python

:TODO_DOCUPDATE:

Les classes abstraites


from abc import ABC abstractmethod

class AbstractShape(ABC):
    @abstractmethod
    def area(self):
        pass 


Références

	*   Tutoriel sur l&#039;usage des classes abstraites en Python
	*  Les classe abstraites en Python (geeksforgeeks.org) (en)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/classes?rev=1672784666&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-03T22:24:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:classes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/classes?rev=1672784666&amp;do=diff</link>
        <description>dev python

:TODO_DOCUPDATE:

Python : les classes

Références

	*  &lt;https://docs.python.org/3/tutorial/classes.html#class-objects&gt;
	*  &lt;https://docs.python.org/3/library/functions.html#property&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-17T16:29:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:exceptions</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&amp;do=diff</link>
        <description>dev python exceptions

Python: les exceptions

	*  Une exception n&#039;est pas une fatalité, c&#039;est un mécanisme de communication d&#039;erreur tout à fait normal dans un programme et on est capable de la capturer et d&#039;y réagir.
	*  Les exceptions fournissent de l&#039;information sur l&#039;erreur qui se produit, c&#039;est donc un mécanisme de notification d&#039;erreur très utile.</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/installer_interpreteurs?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:core:installer_interpreteurs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/installer_interpreteurs?rev=1612216289&amp;do=diff</link>
        <description>dev python

Python: Installer différents interpréteurs

Depuis la version 3.3 de Python le module venv permet de construire un environnement virtuel. Cependant chaque version de l&#039;interpreteur construit 

L&#039; interpréteur de la distribution

Le gestionnaire de paquets de la distribution permet d&#039;installer un interpréteur près-compilé. Il est possible d&#039;afficher le détail des options de configuration utilisées lors de la compilation depuis l&#039;interpréteur:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/blueprints?rev=1775377302&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T08:21:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:blueprints</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/blueprints?rev=1775377302&amp;do=diff</link>
        <description>dev python flask blueprint

Flask : usage des Blueprints

Références

	*  Utilisation des Blueprints Flask (python-3.com)
	*   Les Blueprints Flask (geeksforgeeks.org)
	*  vidéo Introduction aux Blueprints Flask (chaine Pretty Printed youtube.com)
	*  vidéo Utilisation des blueprints Flask (chaine Tech With Tim (youtube.com)</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/unittest/start?rev=1658346668&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-20T19:51:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:unittest:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/unittest/start?rev=1658346668&amp;do=diff</link>
        <description>dev python test unittest

Tests unitaires en python avec unittest

Généralités

unittest est un framework de test unitaires, c&#039;est une implémentation Python des frameworks de type xUnit inspirés de SUnit(Smalltalk&#039;s SUnit), conçu par Kent Beck in 1998 pour le langage orienté objet Smalltalk.</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/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/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/programmation-evenementielle?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:programmation-evenementielle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/programmation-evenementielle?rev=1612216289&amp;do=diff</link>
        <description>dev conception callback

Programmation événementielle

Dans un paradigme (ou modèle) événementiel, le programme principal est à l&#039;écoute des événements (ou signaux). Lorsque ceux-ci se produisent il se charge d&#039;appeler les fonctions de post-traitement associées ou fonction de rappel (callback). Cela permet de produire un code modulaire. La programmation événementielle est utilisée notamment par les interfaces graphiques.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-08T10:31:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:test-unitaire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff</link>
        <description>dev test unitaire

Les tests unitaires

Les tests unitaires permettent de tester des unités de code: fonctions ou objets.

	*  Oblige à correctement concevoir entrées/sorties des fonctions, les interfaces ou API
	*  Permet d&#039;automatiser les tests, de faire des tests non régression</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/traitement-logiciel-des-rebonds?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:traitement-logiciel-des-rebonds</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/traitement-logiciel-des-rebonds?rev=1612216289&amp;do=diff</link>
        <description>dev arduino rebond bounce chatter

Traitement logiciel des rebonds

La bibliothèque Bounce2 permet de traiter logiciellement la problématique des rebonds.

Références

	*  &lt;https://github.com/thomasfredericks/Bounce2/wiki&gt;
	*  &lt;https://en.wikipedia.org/wiki/Switch#Contact_bounce&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-21T10:42:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:yaml</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff</link>
        <description>dev yaml todo

YAML

YAML signifie YAML Ain&#039;t Markup Language (acronyme récursif: YAML n&#039;est pas un langage à balise). Il a pour but de présenter les données en s&#039;appuyant sur un formalisme facilement lisible par l&#039;homme en limitant au maximum les caractères structurant les données. Il est utilisé par les fichiers de configuration texte de nombreux outils.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-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:configurer-eclipse</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-eclipse?rev=1612216289&amp;do=diff</link>
        <description>Développer pour Arduino sous Eclipse

Paramétrage et configuration de l&#039;EDI Eclipse pour développement (cross compilation) sur plateforme Arduino.

Installer IDE Arduino

L&#039;IDE Arduino inclus les outils et les fichiers headers qui seront utilisés par la suite par l&#039;IDE Eclipse.
Recuperer l&#039;archive et decompresser l&#039;IDE Arduino. Dans mon cas l&#039;IDe Arduino est installer au noeud:</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/bash/debogage?rev=1669211307&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T13:48:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff</link>
        <description>dev shell bash debug

Débogage de scripts shell

Avant toute exécution, on peut vouloir valider la syntaxe d&#039;un fichier de script. Pour cela on peut invoquer un shell avec l&#039;option -n (noexec) et le scrit à vérifier en paramètre:


bash -n monscript.sh


Le shell Bash peut être invoqué avec l&#039;option</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/termcap_et_terminfo?rev=1652554330&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-05-14T18:52:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:termcap_et_terminfo</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/termcap_et_terminfo?rev=1652554330&amp;do=diff</link>
        <description>dev c cpp termcap terminfo cli todo

Bibliothèques Termcap et Terminfo

Références

	*  &lt;https://zestedesavoir.com/tutoriels/1733/termcap-et-terminfo/&gt;
	*  &lt;https://fr.wikipedia.org/wiki/Termcap&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/clients_git_windows?rev=1681314922&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-12T15:55:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:clients_git_windows</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/clients_git_windows?rev=1681314922&amp;do=diff</link>
        <description>dev git gui windows

Git : clients avec GUI pour Windows

Quelques clients Git sous Windows largement utilisés et intégrant une GUI :

	*  GitHub Desktop
	*  GitKraken
	*  TortoiseGit

Références

	*  &lt;https://blog.devart.com/best-git-gui-clients-for-windows.html&gt;</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/html/favicon?rev=1731151907&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-09T11:31:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:html:favicon</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/html/favicon?rev=1731151907&amp;do=diff</link>
        <description>dev html web icon favicon

HTML : Ajout d&#039;un favinco

On définit le favicon associé au site dans le head. La norme HTML5 recommande de définir différentes tailles pour les favicons en utilisant les attributs rel=“icon” et sizes :


&lt;html&gt;
&lt;head&gt;
   &lt;link rel=&quot;icon&quot; type=&quot;image/png&quot; sizes=&quot;48x48&quot; href=&quot;/static/favicon-48x48.png&quot;&gt;
&lt;/head&gt;
...
&lt;/html&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-23T13:55:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:make:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff</link>
        <description>dev c make makefile compilation

make

make est un programme permettant d&#039;automatiser les différentes étapes de compilation permettant d&#039;aboutir à la création de fichiers binaires exécutables.

Installation

Via le gestionnaire de paquets:


sudo apt-get install make


Makefile</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?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:ncurses:fenetres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?rev=1612216289&amp;do=diff</link>
        <description>ncurses windows fenetres

Les fenêtres avec ncurses

stdscr est la fenêtre par défaut proposée par ncurses. L&#039;utilisateur a la possibilité de créer ses propres fenêtres. Les fenêtres permettent de définir des zones d&#039;affichage indépendantes.

Les fenêtres sont crées via l&#039;appel de la fonction</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?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:ncurses:menus</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses menu

Menus avec ncurses

La bibliothèque menu permet de générer des menus personnalisables. Un menu est un affichage permettant à l&#039;utilisateur de choisir une option dans un ensemble. La bibliothèque permet également de définir des menus avec des choix multiples.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/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:ncurses:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/start?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses

ncurses

ncurses pour new curses et curses pour cursor optimization. C&#039;est une bibliothèque de fonctions C permettant une gestion avancée des entrées/sorties sur un terminal en ligne de commandes (CLI). ncurses se charge de détecter les capacités du terminal et envoi les caractères de contrôles adaptés.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?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:gdb</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?rev=1612216289&amp;do=diff</link>
        <description>GDB, the Gnu DeBugger

Le débogueur est un outil permettant de rectifier les erreurs se trouvant dans un programme tiers en cours de développement. Il permet notamment d&#039;exécuter le programme pas à pas, de consulter l&#039;état des variable etc.

Pour pouvoir être utilisé avec gdb, le programme en cours de débogage doit être compilé avec des options spécifiques notamment l&#039;option -g</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/php/debogage?rev=1751211477&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-29T15:37:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/debogage?rev=1751211477&amp;do=diff</link>
        <description>dev php

:TODO_DOCUPDATE:

A propos du débogage en PHP

vérifier la syntaxe d&#039;un script depuis la ligne de commande:


php -l mon_script.php


Afficher les fichiers de configuration chargés par la CLI :


# 
php --ini


Afficher les modules actifs :


php -m</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?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:bonnes-pratiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?rev=1612216289&amp;do=diff</link>
        <description>Bonnes pratiques

Duck typing

La l&#039;oie du canard: If it looks like a duck and quacks like a duck, it must be a duck.

Dans la majorité des cas il importe peu que l&#039;objet soit une instance d&#039;un type particulier, on cherche à savoir s&#039;il a le bon comportement. On privilégiera donc l&#039;emploie de</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?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:caracteres-et-encodage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?rev=1612216289&amp;do=diff</link>
        <description>dev python charset caracteres encodage encoding

Jeux de caractères et encodage avec python

Le PEP 263 détaille les problématiques liées à l&#039;encodage de caractères en Python et la directive coding.

Encodage par défaut

Il est possible de récupérer l&#039;encodage par défaut utilisé par le système courant via le module</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?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:connexion-mysql</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?rev=1612216289&amp;do=diff</link>
        <description>dev python mysql

Python: Connexion à une base MySQL

Module MySQLdb


pip3 install mysqlclient

APIlibmysqlclient-devlibpython-dev


import MySQLdb
db = MySQLdb.connect(&quot;machine&quot;, &quot;dbuser&quot;, &quot;password&quot;, &quot;dbname&quot;)
cursor = db.cursor()
query = &quot;&quot;&quot;SELECT * FROM sampletable&quot;&quot;&quot;
lines = cursor.execute(query)
data = cursor.fetchall()
db.close()</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-03T23:29:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:documentation_du_code</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff</link>
        <description>dev python code documentation

:TODO_DOCUPDATE:

Python : Génération de la documentation

La documentation embarquée dans le code (les docstrings) peut être extraite et mise en forme par le module pydoc.

Les conventions d&#039;écriture des docstring sont abordées dans la PEP 257.

Les annotations de types (type hinting) participent également à la lisibilité et la documentation du code.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?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:executer_commande_systeme</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?rev=1612216289&amp;do=diff</link>
        <description>dev python command sysadmin

Python: Invoquer une commande

Pour invoquer une commande depuis un script, si les valeurs retournées sur stdout et stderr n&#039;ont pas d&#039;importance, le plus simple:


from os import system as run_command

# La commande a exécuter
cmd=r&#039;whereis snmpget&#039;

# res sauvegarde la valeur de retour de la commande 
res = run_command(cmd)</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/python/mqtt?rev=1671580474&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-20T23:54:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:mqtt</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/mqtt?rev=1671580474&amp;do=diff</link>
        <description>dev python mqtt iot

Python : Communication MQTT

Le projet Eclipse Paho vise à créer des implémentations open source du protocole MQTT pour différents langages de programmation (C, Python, Arduino, Java, JavaScript, C#, etc.).

Le projet propose un client MQTT en Python</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?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:operation-modulo</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?rev=1612216289&amp;do=diff</link>
        <description>dev python modulo

Python: opération modulo

L&#039;opération modulo est une opération binaire qui associe à deux entiers naturels le reste de la division euclidienne du premier par le second.

a,b E N et b &lt;&gt; 0. En python:


a mod b = a%b


Cas des entiers relatifs

Selon les langages, le résultat de l&#039;opération modulo appliquée aux entiers relatifs n&#039;est pas identique. Python respecte la définition mathématique de l&#039;opération:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?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:pyflakes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?rev=1612216289&amp;do=diff</link>
        <description>pyflakes

Installation


$ pip install --upgrade pyflakes


Utilisation

Pour vérifier le code, il suffit d&#039;invoquer pyflakes avec en argument le script a vérifier. Il retourne sur la sortie standard les anomalies détectées:


$ pyflakes ./mon-script.py</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-15T10:38:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:install-debian</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff</link>
        <description>raspberry pi raspbian

:ARCHIVE:

Raspbian
RaspbianRaspberry Pi OSRaspberry Pi Imager

Une version de Debian compilée pour le Raspberry Pi est disponible sur le site officiel. L&#039;image peut être téléchargée à cette adresse: &lt;http://www.raspberrypi.org/downloads&gt;

L&#039;installation se fait simplement par copie de l&#039;image du système sur la carte SD.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-05T17:47:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:sql:delete</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff</link>
        <description>dev sql delete

:TODO_DOCUPDATE:

SQL : Supprimer des enregistrements

On supprime les enregistrements (ou lignes d&#039;une table) via la commande DELETE.

Références

	*  &lt;https://docs.postgresql.fr/11/sql-delete.html&gt;
	*  &lt;http://www.lafabriquedecode.com/blog/2013/06/mysql-update-delete-jointures/&gt;
	*  &lt;https://www.w3schools.com/sql/sql_join.asp&gt;
	*  &lt;https://www.mysqltutorial.org/mysql-basics/mysql-delete-join/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/uml/agregation-composition?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:uml:agregation-composition</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/uml/agregation-composition?rev=1612216289&amp;do=diff</link>
        <description>uml agregation composition

Différencier agrégation / composition

En UML, l&#039;agrégation et la composition sont deux types de relations entre des objets de classes différentes.

Composition

Dans le diagramme de classes ci dessous, une relation de composition a été crée entre les classes A et B.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/uml/editeurs?rev=1697473199&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-16T16:19:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:uml:editeurs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/uml/editeurs?rev=1697473199&amp;do=diff</link>
        <description>dev conception uml editeur

Éditeurs UML

Parmi les éditeurs UML, j&#039;en retiens deux correspondant à mes attentes en matière de conception de petits projets. Ce sont des éditeurs libres multiplateformes simple d&#039;emploi. J&#039;ai découvert en premier ArgoUML qui est certainement le plus complet en terme de fonctionnalités mais</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/web/image-interactive?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:web:image-interactive</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/image-interactive?rev=1612216289&amp;do=diff</link>
        <description>dev web image

Créer une image interactive

Références

	*  &lt;https://docs.gimp.org/fr/plug-in-imagemap.html&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?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:iot:esp8266:communication_serie_via_minicom</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?rev=1612216289&amp;do=diff</link>
        <description>dev iot esp8266 serie minicom

Devkit v3 ESP8266: Communication série avec minicom

Identifier dans un premier temps le fichier périphérique auquel est associée la carte de développement (DevKit) lorsqu&#039;elle est connectée à l’hôte. Pour cela, brancher le DevKit ESP8266 sur le port USB et consulter les journaux système:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-20T06:59:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:pwm</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff</link>
        <description>riot iot pwm todo

RIOT-OS: Le périphérique PWM

RIOT propose un interface virtualisée (ou générique) PWM désignée “périphérique PWM” (periph_pwm ). Le code utilisant cette interface gagne en portabilité, il pourra être compilé vers différentes cibles suportant la génération de signaux PWM. C&#039;est une</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T11:38:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:convention_nommage_variables</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff</link>
        <description>dev python variable nommage nomenclature

:TODO_DOCUPDATE:

Python : variables et conventions de nommage

Syntaxe

En python les variables ne peuvent pas commencer par un chiffre, ne doivent pas contenir d&#039;espaces ou de caractères spéciaux. Le nom d&#039;une variable ne doit pas être identique aux mots réservés du langage :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-29T15:08:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:listes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff</link>
        <description>dev python liste

Les listes en python

Une liste est un ensemble ordonné d&#039;objets. On parle de structure de données de type séquence car chaque élément est accessible via son index.

La liste peut être vue comme une généralisation des chaînes de caractères : là où la chaîne est une séquence de caractères, la liste peut contenir des valeurs de tous types : n’importe quelle valeur peut être contenue dans une liste.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-29T13:01:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:litteraux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff</link>
        <description>dev python

Les littéraux

En Python, le littéral désigne la notation utilisée pour définir une valeur constante sur un type de base comme la chaîne de caractères (str), la suite d&#039;octets (bytes) et même les valeurs numériques.

Pour les chaînes de caractères, le littéral est introduit par un préfixe (stringprefix) et encadré par des guillemets simples, doubles ou triples.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-29T13:01:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_bytes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff</link>
        <description>dev python

Python : le type Bytes

Le type natif Bytes permet de définir une suite d&#039;octets (séquence immuable d&#039;octets).

Seuls les caractères ASCII sont autorisés dans les littéraux de bytes (quel que soit l’encodage du code source déclaré). Toutes les valeurs au delà de 127 doivent être entrés dans littéraux de bytes en utilisant une séquence d’échappement appropriée.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-18T13:17:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:types</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff</link>
        <description>dev python types

:TODO_DOCUPDATE:

Python : Vue d&#039;ensemble des types

None

En Python une valeur indéfinie (équivalent de null dans d&#039;autre langages) est associée au singleton None :


&gt;&gt;&gt; id(None)
10746016

&gt;&gt;&gt; aValue = None
&gt;&gt;&gt; id(aValue)
10746016

&gt;&gt;&gt; aValue is None
True</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/normaliser_texte?rev=1754153951&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-02T16:59:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:normaliser_texte</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/normaliser_texte?rev=1754153951&amp;do=diff</link>
        <description>dev python normalisation texte

Python : Normalisation de données textuelles

:TODO:

Références

	*  &lt;https://www.geeksforgeeks.org/python/normalizing-textual-data-with-python/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T12:27:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:recuperer_adresse_mac</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&amp;do=diff</link>
        <description>dev python3 mac

Python3 : Récupérer l&#039;adresse MAC

Plusieurs exemples de codes permettant de récupérer l&#039;adresse MAC ou adresse matériel de l’hôte.

Module getmac

On installe le module au sein d&#039;un environnement virtuel:


# creation de l&#039; environnement virtuel
python3 -m venv py_mac_test

# charger l&#039;environnement virtuel
cd py_mac_test
source bin/activate

# mise à jour de pip
python3 -m pip install --upgrade pip

# installation du module getmac
pip3 install get-mac</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/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-23T13:39:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:charger_fichier_csv</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff</link>
        <description>dev data jupyter python csv

Jupyter Notebook: Charger des données au format CSV


import pandas as pd

# Load CSV to data frame
df = pd.read_csv(&quot;./data.csv&quot;, encoding=&quot;utf8&quot;, header=None, sep=&quot;,&quot;)


La documentation de pandas détaille les différents paramètres de la méthode à l&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/generer_graphique_matplotlib?rev=1619192222&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-23T15:37:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:generer_graphique_matplotlib</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/generer_graphique_matplotlib?rev=1619192222&amp;do=diff</link>
        <description>dev python jupyter graphique todo

Jupyter: Générer des graphiques avec matplotlib

Références

	*  &lt;https://towardsdatascience.com/making-plots-in-jupyter-notebook-beautiful-more-meaningful-23c8a35c0d5d&gt;
	*  &lt;https://numpy.org/doc/stable/user/absolute_beginners.html#plotting-arrays-with-matplotlib&gt;</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/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/sphinx/installation?rev=1697973858&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-22T11:24:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:installation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/installation?rev=1697973858&amp;do=diff</link>
        <description>dev python documentation sphinx

Sphinx : Installation

Sphinx utilise Python et make pour construire la documentation:


sudo apt install build-essential python3 python3-pip python3-venv


Créer et activer l&#039;environnement virtuel du projet et on installe les modules via pip3. Ici en plus du module sphinx on installe le thème</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-02T17:30:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:internationalisation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff</link>
        <description>dev python sphinx traduction documentation

:TODO_DOCUPDATE:

Sphinx : traduction de la documentation

Sphinx s&#039;appuie sur gettext pour l&#039;internationalisation de l&#039;ensemble des documents produits. De façon générale gettext fait correspondre à un message du programme une chaîne de caractères traduite.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-05T08:27:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:reutiliser-des-variables-du-fichier-conf</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff</link>
        <description>dev python sphinx documentation

Sphinx : Utiliser les variables du fichier de configuration dans la documentation

Le fichier de configuration de Sphinx définit un ensemble de variables qu&#039;il peut être pratique de pouvoir exploiter dans la documentation comme project ou release.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?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:sqlalchemy:installation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?rev=1612216289&amp;do=diff</link>
        <description>dev python sqlachemy sql orm

Installer le module SQLAlchemy

Création de l&#039;environnement virtuel et installation du module:


virtualenv --python=/usr/bin/python3 --no-site-packages alchemytest

cd alchemytest/bin
source activate

pip install SQLAlchemy


Pour vérifier, lister les modules installés avec</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-04T16:01:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:toolchains:esp-wroom-32</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff</link>
        <description>dev riot riot-os toolchain esp32 iot

RIOT-OS: Installation de la toolchain pour ESP-WROOM-32

Une image docker proposée par défaut intègre un ensemble de toolchains vers diverses cibles. Les notes proposée ci-dessous permettent de recréer une image docker de taille réduite (passant de 8 Go à 2 Go) intégrant les chaines de compilation vers les cibles ESP8266 et ESP32.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-07T05:09:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:exemples:redirections</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&amp;do=diff</link>
        <description>dev python flask redirection

Flask : redirections

Le framework Flask propose la fonction redirect(). Pour les redirections internes, on l&#039;utilise conjointement à la fonction url_for() :


from flask import Flask, redirect, url_for

app = Flask(__name__)

@app.route(&#039;/&#039;)
def home():
    return &#039;Welcome to Home Page&#039;

# Redirection externe
@app.route(&#039;/goto/sponsor/example_dot_com&#039;)
def external_redirect():
    return redirect(&#039;https://www.example.com&#039;)

# Redirection interne
@app.route(&#039;/test-p…</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/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>
    <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/flask/extensions/flask-sqlalchemy/afficher-les-requetes?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:extensions:flask-sqlalchemy:afficher-les-requetes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask-sqlalchemy/afficher-les-requetes?rev=1756406120&amp;do=diff</link>
        <description>dev python sql sqlalchemy

Afficher les requêtes produites par l&#039;ORM SQLAlchemy

La variable de configuration SQLALCHEMY_ECHO

Lorsqu&#039;on utilise l&#039;extension Flask-SQLAlchemy, on peut afficher un retour des requêtes produites par l&#039;ORM sur la console en utilisant la variable de configuration</description>
    </item>
</rdf:RDF>
