【问题标题】:Blank output on db query数据库查询的空白输出
【发布时间】:2013-12-03 15:50:30
【问题描述】:

我试图在下面运行这个 python-django 代码,但得到一个空白输出

SitePaths = PathsOfDomain.objects.filter(pathToScan__contains="www.myapp.com")

        return SitePaths

PathsOfDomain 是 db 表的对象表示。

我正在尝试遍历数据库字段名称pathToScan 并输出每个值

如果有人可以对此有所了解。

谢谢。

【问题讨论】:

  • 在 Django ORM 中,Model 实例在数据库中建模一行。看起来您创建了一个实例,您没有查询该表。您的意思是列出与Tld 相关的项目吗?
  • Martjn - 我试图用 FKtoTld_id=domain_in_session 选择所有 db 字段并输出 pathToScan 列的值
  • 看起来 SitePaths 是一个对象,而不是一个查询集。你总是可以for key, value in SitePaths.__dict__:
  • @karthikr - 请发布答案。

标签: python django iterator


【解决方案1】:

如果您要查询数据库中匹配的PathsOfDomain 行,请使用.objects 属性创建查询集:

SitePaths = PathsOfDomain.objects.filter(FKtoTld__id=domain_in_session)

请参阅 Django 文档中的 Making queries

或者,如果TldPathsOfDomain 对象之间存在外键关系,请改用the related objects manager

SitePaths = domain_in_session.pathsofdomain_set.all()

【讨论】:

  • 请查看更新后的代码。此代码不起作用,但如果我在 db 末尾手动运行 sql: SELECT * FROM mydb WHERE pathToScan LIKE '%www.myapp.com%';它显示了 58 条记录..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-07
  • 1970-01-01
  • 1970-01-01
  • 2015-11-26
  • 1970-01-01
相关资源
最近更新 更多