【发布时间】:2013-12-14 11:20:38
【问题描述】:
我在 Django 项目中使用 Scrapy。
在我的 pipelines.py 文件中,我可以毫无问题地从 Django 导入模型:
from competitions.models import Competition
我可以成功显示竞赛模型的属性列表:
for field_name in Competition._meta.get_all_field_names():
print field_name #>>> OK
但是Competition.objects的所有方法如Competition.objects.get() raise django.db.utils.DatabaseError: no such table: competitions_competition"
例如,当我尝试获取实例时出现此错误:
uefa_champ_leagues = Competition.objects.get(code='EUR_C1_2013')
我已经应用了来自 Saving Django model from Scrapy project 和 Access django models inside of Scrapy 的建议,并且由于导入有效,我怀疑问题出在那里。
有什么想法吗?
【问题讨论】:
-
你运行
syncdb了吗?表是否存在于数据库中? -
"yes" 和 "yes" 整个 Django 项目已经运行好几个月了。我只是在测试 Scrapy 而不是 BeautifulSoup。
-
如何在自定义 django 管理命令中使用 Scrapy? docs.djangoproject.com/en/dev/howto/custom-management-commands
-
@janos:谢谢你的参考,我试试看
-
@janos:感谢您,django admin 命令不仅是一个很棒的发现,而且还解决了我的问题。非常感谢!
标签: django django-models scrapy