web2py | |
![]() | |
Développeurs | web2py developers |
---|---|
Dernière version | 1.79.2 (1.79.2 ) [+/−] |
Environnements | Multiplate-forme |
Langue | Multilingue |
Type | Framework Web |
Licence | GNU GPL |
Site Web | homepage mailing list |
modifier |
Web2py est un framework web open source écrit et programmable en langage Python initialement conçu comme un outil éducatif facile à prendre en main et sans fichiers de configuration. Il s'inspire des framework web Ruby on Rails (RoR) et Django en permetttant de ce concentrer sur le développement rapide d'applications, mettant en oeuvre le principe de convention plutôt que configuration et suivant le patron d'architecture Modèle-Vue-Contrôleur(MVC).
Web2py est un framework "full stack" qui permet d'assurer plusieurs fonctions:
Web2py encourage les pratiques d'ingénierie du logiciel:
Web2py est déployable avec les protocoles WSGI, CGI et FastCGI. Il permet également d'utiliser le multithreading et SSL.
Web2py fonctionne sur Windows, les téléphones Windows CE, Unix/Linux, Google App Engine, Amazon EC2 et la majorité des hébergeur web.
Web2py est compatible avec CPython 2.4, 2.5 et 2.6.
Depuis la version 1.64.0, Web2py fonctionne sans modification sur la plate-forme Java avec Jython 2.6 sans limitations connues.
Web2py est aussi disponible en utilisant IronPython pour la plateforme .NET sous certaines conditions:
L'utilisation depuis VMWare est prévue prochainement.
L'exécutable Web2py fonctionne depuis une clé USB ou un disque dur portable sans aucune dépendances mise à part Python.
Web2py peut servir les requêtes HTTP et HTTPS avec son serveur web intégré, Apache, Lighttpd, Cherokee, Nginx et d'autres serveurs depuis CGI, FastCGI, WSGI, mod_proxy ou mod_python.
Le développement, le debug, les tests, la maintenance et l'administration de la base de données peuvent être réalisés par l'interface web. L'internationalisation, comprenant l'ajout, la suppression et la modification des fichiers de langues, est également accessible depuis cet environnement. De plus, chaque application dispose d'un shell intégré pour aider au développement.
En plus de cette interface, la gestion de l'application est possible par une interface en ligne de commande ou d'autres environnements de développement intégré.
Web2py inclut un système de template en pure Python mais sans indentation. Un convertisseur markdown2 permet de convertir le code généré du langage Markdown en HTML à la volée.
Chaque application web2py dispose d'un système de ticket. Lorsqu'un bug survient, un ticket est généré pour traquer les erreurs sans qu'elles ne soient affichées à l'utilisateur. Le code source et les erreurs sont ainsi protégés et seul l'administrateur peut les consulter.
Cron est un mécanisme qui permet d'exécuter des tâches récurrentes en arrière plan. Web2py utilise ce système en consultant un fichier crontab standard et en se basant sur plusieurs modes d'exécution.
Les applications Web2py peuvent être compilées en bytecode et être ainsi distribuées sans fournir le code source.