django - 从 Django 调用数据库函数的正确方法?

标签 django postgresql search function call

我正在尝试使用 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/

相关文章:

python - 当一组更改时更改模型

python - 将 django-allauth 与 tastypie 一起使用的正确方法是什么?

PostgreSQL 安装错误

postgresql - 在 postgres 中的子句

c++ - 在列表 c++ 中搜索?

python - 删除 Django admin 中的默认删除操作

django - 在 Django 中过滤多对多关系

php - 聊天框注销消息

php - 如何使输入字段将文本带入单独页面上的 Google 自定义搜索

C MPI 数组搜索帮助 (MPI_Scatter)