[python] Python WSGI (začátečník)

Filip Štědronský regnarg na seznam.cz
Sobota Duben 24 17:18:18 CEST 2010


Dne 24.4.2010 16:01:47 napsal Thomix:
> def application(environ, start_response):
>     status = '200 OK'
>     output = 'hl'
>     print("neco");
> 
>     response_headers = [('Content-type', 'text/plain'),
>                         ('Content-Length', str(len(output)))]
>     start_response(status, response_headers)
> 
>     return [output]
> 
> Nějak nechápu v čem je problém. Mod_python nechci používat z důvodu
> slabé odezvialesponň dle statistik co jsem četl na internetu. Mohl by
> mě prosím někdo objasnit alespoň základ psaní ve WSGI ?

Ahoj,

no, ono pro začátečníky možná lepší než psát v čistém WSGI 
je zkusit nějaký framework, tedy sadu knihoven a skriptů, která
dá webové aplikaci nějaký řád. Kromě těch známých a obrovských
jako Django, TurboGears, etc., za sebe mohu doporučit docela 
minimalistickou hračku jménem web.py [http://webpy.org], která
se svou jednoduchostí blíží čistému WSGI (nepotřebuje 
pětimegovou referenčku), jen se v tom o něco příjemněji píše
a existuje spousta hezkých návodů a tutoriálů (v angličtině).

Ale k Tvému problému: ona ta proměnná output tam není jen tak
pro srandu králíkům. Do ní patří to, co se vypisuje, printy 
skončí někde v logu webserveru, či spíše v /dev/null. Takže 
třeba by se pro začátek dal ten print nahradit něčím jako 
output+="neco\n". Ale takhle ručně se text obvykle nevypisuje.
Pokud chceš generovat složitější stránky, je lepší poohlédnout
se po nějakém šablonovacím systému (který typicky vezme nějakou
textovou předlohu uloženou ve zvláštním souboru a doplní do ní
z programu data - tak je ve zdrojáku méně nepřehledného maglajzu
generujícího výstup) - ale to jen tak na okraj.

S pozdravem
Filip Štědronský

-- 
————————————————————————————————————————————————————————————————
http://regnarg.matfyz.cz  ☼  Není důležité milovat fajn člověka, 
                            je důležité, aby vám spolu bylo fajn



Další informace o konferenci Python