Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在scrapy spider中删除django中表中的所有数据_Python_Django_Scrapy - Fatal编程技术网

Python 如何在scrapy spider中删除django中表中的所有数据

Python 如何在scrapy spider中删除django中表中的所有数据,python,django,scrapy,Python,Django,Scrapy,我有一个爬行器,它填充了一个表,最多10到20条记录被刮去并插入到表中。所以我想,与其去看一个记录是否存在并更新它,不如干脆把它们清除掉,换一个新的来代替它们。鉴于我的表中几乎没有数据,你认为什么是更好的选择?另外,借助where子句,django orm命令要删除什么,例如删除所有以“cat”作为名称的记录?多谢各位 另外,借助where子句,django orm命令要删除什么,例如删除所有以“cat”作为名称的记录 这非常简单: MyModel.objects.filter(name__co

我有一个爬行器,它填充了一个表,最多10到20条记录被刮去并插入到表中。所以我想,与其去看一个记录是否存在并更新它,不如干脆把它们清除掉,换一个新的来代替它们。鉴于我的表中几乎没有数据,你认为什么是更好的选择?另外,借助where子句,django orm命令要删除什么,例如删除所有以“cat”作为名称的记录?多谢各位

另外,借助where子句,django orm命令要删除什么,例如删除所有以“cat”作为名称的记录

这非常简单:

MyModel.objects.filter(name__contains="cat").delete()

我认为@ernie关于避免过早优化的评论是正确的。但是如果您真的在意,您可以使用
MyModel.objects.all().delete()

删除所有记录,这听起来像是预成熟的优化。如果你真的在乎,请描述它并查看,但这可能并不重要。谢谢@ernie,我想知道清理表以获取新数据的“过早优化”是什么?谢谢我是说,比较转储表并重写它是否更快,或者是否查找和更新特定记录(尤其是对于这样一个小的表)是不值得优化的。如果你有一些有用的东西,继续使用它。没有理由尝试重做,除非你发现这是一个真正的瓶颈。您将花费更多的时间重写代码,而不是获得任何性能差异。