Web development with Python 3.1
bruno.42.desthuilliers at websiteburo.invalid
Wed Oct 28 15:17:47 CET 2009
Dotan Cohen a écrit :
>>>>> While I know that to be true in the general sense, from what I've
>>>>> looked at Django and other frameworks it seems that the web frameworks
>>>>> push the coder to use templates, not letting him near the HTML.
>>>> Well... there must be a reason, for sure... No ?
>>> ֹYes, but I don't like it.
>> Why so ? What's your problem with templating systems, exactly ?
> They don't give me the control over the HTML that I would like. I'm
> probably stuck in 1998 when they didn't exist, but I like to write the
> HTML myself.
*Why* on earth do you think using a templating system will give you any
less control on the generated HTML ?
>>>>> Django and the other frameworks seem to
>>>>> force the user to use templates.
>>>> Not at all. Nothing prevents you from shooting yourself in the foot and
>>>> generating HTML "by hand" in your view functions (or request handler
>>>> etc, depending on the framework).
>>> How is this done in Django, then?
>> def index(request):
>> unmaintanable_html = """
>> <h1>Embedded HTML is a PITA</h1>
>> <p>but some like pains...</p>
>> return HttpResponse(unmaintanable_html)
> And if I need to add a variable or three in there?
- first solution : use string formatting
python 2.x example:
unmaintanable_html = """
data = dict(
h1="Poor man's templating",
text="Won't get you very far..."
return HttpResponse(unmaintanable_html % data)
- second solution: do basically the same thing with a template system -
which will give you much more power and options...
> Static HTML I can
> do without Python.
Sorry, I forgot to setup a database etc for this example !-)
More information about the Python-list