Como faço para passar argumentos extras para um decorador do Python?

Eu tenho um decorador como abaixo.

<code>def myDecorator(test_func):
    return callSomeWrapper(test_func)
def callSomeWrapper(test_func):
    return test_func
@myDecorator
def someFunc():
    print 'hello'
</code>

Eu quero melhorar este decorador para aceitar outro argumento como abaixo

<code>def myDecorator(test_func,logIt):
    if logIt:
        print "Calling Function: " + test_func.__name__
    return callSomeWrapper(test_func)
@myDecorator(False)
def someFunc():
    print 'Hello'
</code>

Mas esse código dá o erro

TypeError: myDecorator () leva exatamente 2 argumentos (1 dado)

Por que a função não é passada automaticamente? Como faço para passar explicitamente a função para a função de decorador?

questionAnswers(4)

yourAnswerToTheQuestion