fatiherikli

python'un en sevdiğim özelliklerinden birisidir. hele bir de django ile birleşti mi tadından yenmiyor. bugün şöyle birşey keşfettim. decorator modülündeki decorator adındaki helper bir decorator ile çok basit bir şekilde decorator oluşturabilmekteyiz. bu cümleyi sonradan kendim okudum, üzerine çimento dökmek istedim. onun için üzerini çiziyorum.

örnek olarak django'da viewlar için bir decorator yazalim.

from decorator import decorator
@decorator
def sevgili_decorator(func, *args, **kwargs):
    response = func(*args, **kwargs)
    response.write("ben decorator'den gelmeyim.")
    return response

şimdi de herhangi bir view'ımızda kullanalım. sevgili decorator'umuz üzerine düşen görevi yapacak ve response'un sonuna bir metin ekleyecektir.

@sevgili_decorator
def index(request, template="index.html"):
    return render_to_response(template,   
context_instance=RequestContext(request))

bu da böyle bir anımdı.

comments powered by Disqus