1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
#!/usr/bin/env python
#-*- coding: utf-8 -*-
# Pour info, il existe le module Markdown qui permet de convertir du texte en html.
# Pour installer Markdown:
# wget http://pypi.python.org/packages/source/M/Markdown/Markdown-2.0.tar.gz
# tar xvzf Markdown-2.0.tar.gz
# cd Markdown-2.0/
# sudo python setup.py install
# --- SQLite
import sqlite3
class Mabase():
def __init__(self):
"""
Pour effacer la base créée, il suffit de supprimer /tmp/mabase.db """
self.conn = sqlite3.connect('/tmp/mabase.db')
def creer(self):
""" Créer une simple base à une table pour le test.
Renvoi True si reussie, False si déjà créée. """
# Obtention d'un curseur
c = self.conn.cursor()
try:
# Créer une table
c.execute('create table matable (id INTEGER PRIMARY KEY,nom VARCHAR(50), prenom VARCHAR(50))')
# Inserer deux lignes de données
c.execute('insert into matable values (null,"Dupont","Jean\nMichel")')
c.execute('insert into matable values (null,"Martin","Marie")')
# Sauvegarder les modifications
self.conn.commit()
# Fermer le curseur
c.close()
return True
except:
# Fermer le curseur
c.close()
return False
# Cela créera la base au lancement du serveur
mabase = Mabase()
mabase.creer()
#--- Webpy
import web
web.config.debug = False # Désactive le mode débuggage
urls = (
'/(.*)', 'hello'
)
app = web.application(urls, globals())
# http://webpy.org/docs/0.3/templetor.fr
render = web.template.render('templates', globals={})
db = web.database(dbn='sqlite', db='/tmp/mabase.db')
class hello:
def GET(self, name):
web.header("Content-Type","text/html; charset=utf-8")
list = db.select('matable')
return render.matable(list)
if __name__ == "__main__":
app.run() |
Partager