使用函数输入作为代码Python

时间:2013-03-07 11:24:45

标签: python sqlalchemy

我有这个功能(SQLAlchemy):

# table: Table to search (should be the class name)
# column: filter to use
# search: search term
#
# Returns a list [object] with the found entries in the database
# Uses the SQL LIKE statement

def search(table, column, search):
    results = dbsession.query(table).filter(column.like('%' + search + '%')).all()
    return results

因此,此搜索功能在类“表格”中搜索,使用过滤器“列”并搜索“搜索”。我现在遇到的问题是,如果我为'column'输入一个值(实际上不是一个字符串而是一段代码),我总是会收到一个名称不存在的错误:

  users =  search(User, fname, 'Jo')
NameError: name 'fname' is not defined

有人知道如何正确编码吗?

1 个答案:

答案 0 :(得分:1)

改为使用users = search(User, User.fname, 'Jo')