Как насчет
eval(classname).as_view()(request)
* * 1004
Я предполагаю, что вы не знаете, какой класс вы хотите использовать заранее, потому что в противном случае вы могли бы написать GetAjaxView.as_view()(request)
.
Если вы генерируете строку из пользовательского ввода, не используйте eval ; Вместо этого разработайте решение, которое будет отвечать только ожидаемым данным, возможно, что-то вроде:
if classname == "GetAjaxView":
return GetAjaxView.as_view()(request)
elif classname in ["GetHectorView", "GetUlyssesView"]:
return eval(classname).as_view()(request)
else:
return defaults.server_error(request, template_name='500.html')