Bonjour,

Je suis en train d'écrire une petite application web (pour gérer une liste de dépenses) en Python avec webpy et une base de donnée sqlite.

En gros j'ai un code qui pour le moment ressemble à ça :

./argent.py :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
import web
 
urls = ('/', 'index')
render = web.template.render('templates', globals={})
db = web.database(dbn='sqlite', db='database.db')
 
class index:
    def GET(self):
        list = db.select('argent')
        return render.argent(list)
./templates/argent.html :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
$def with (list)
<table>
$for row in list:
    <tr>
        <td>$row.quand</td>
        <td>$row.pourquoi</td>
        <td>$row.combien</td>
    </tr>
</table>
Le champ row.pourquoi peut contenir des retours à la ligne que j'aimerais remplacer par des <br/> mais je ne vois pas comment faire ça simplement.

Lorsque j'essaye de faire un row.pourquoi.replace('\n', '<br/>') (aussi bien dans le code que le template) j'obtiens une erreur 'NoneType' object has no attribute 'replace'.

Je sais que c'est un problème de débutant mais justement je débute (en fait j'apprend le Python par la même occasion).

Merci d'avance.