Форум сайта python.su
Здравствуйте, заранее извиняюсь, не могу воспользоваться гуглом из-за того, что не знаю, по каким ключевым словам искать.
Юзаю SQLObject. Из http запроса вытаскиваю имя класса (строкой), который есть потомок SQLObject. Как, имея некоторую строку, создать объект нужного класса, чтобы в последствии вызвать у этого объекта метод select() для выбора всех объектов из бд? Может такое уже в самой SQLObject реализовано?
Офлайн
ну что-то вроде этого:
import model
obj = getattr(model, name)()
Отредактировано (Июль 9, 2009 12:22:35)
Офлайн
можно с помощью exec, например:
name = "str"
exec "s = " + name + "()"
print s.__class__
Офлайн
pasaranaxСкорее уж eval…
можно с помощью exec, например:
>>> name = "str"
>>> s = eval(name + '()')
>>> print s.__class__
<type 'str'>
Отредактировано (Июль 9, 2009 13:47:45)
Офлайн
Огромное СПАСИБО! То, что надо!
Офлайн
думаю так будет более правильно:
from sqlobject import classregistry
soClass = classregistry.findClass(ClassName)
Офлайн