我正在尝试使用 postgresql 和 django 进行全文搜索 所以我创建了一个函数 search_client(text)
返回客户端列表。要从数据库调用它,我使用这样的东西:
SELECT * FROM search_client('something')
而且我不太确定如何从 Django 调用它。我知道我可以做类似的事情
cursor = connection.cursor()
cursor.execute("SELECT * FROM search_client('something')")
result = cursor.fetchall()
但这只会返回一个值列表,我想要一个对象列表,就像我使用“filter()”方法时一样。
有什么想法吗?感谢您的宝贵时间!
最佳答案
如果您的目标是功能齐全的搜索引擎,请查看 django-haystack .它很震撼。
至于你的问题,新的 (Django 1.2) raw
方法可能有效:
qs = MyModel.objects.raw("SELECT * FROM search_client('something')")
关于django - 从 Django 调用数据库函数的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3467557/