flask-classy
flask-classy copied to clipboard
fix when use some complex decorator
when i use some complex decorator. the get_true_argspec do something wrong with closure for example
def func_permission(check_func, **deco_kwargs): def wrapper(fn): @wraps(fn) def decorated_view(_args, *_kwargs): result = check_func(**deco_kwargs) if result: return fn(_args, *_kwargs) return while_no_permission() return decorated_view return wrapper
@func_permission(some_check_func) def get(self, restaurant_id): restaurant_id = int(restaurant_id)
will raise DecoratorCompatibilityError
this commit will fix this error. the new get_true_argspec before raise this exception,will check weather this is the real undecorate function by check the function name.
by the way,which is the best way to post code,bug and the way to re produce this bug?
sorry 4 that i didn't use markdown to format-.-...
+1 I've run into this issue as well