我对管理模型的正确,最佳方式有疑问.我是django的相对新手,所以我想我需要阅读更多的文档,教程等(对此的建议会很酷!).
无论如何,这是我的问题:
我有一个python网络爬虫,与django模型"连接".
爬行每天进行一次,所以找到"重复"真的很常见.为避免重复,我这样做:
cars = Car.Objects.filter(name=crawledItem['name']) if len(cars) > 0: #object already exists, update it car = cars[0] else: car = Car() #some non-relevant code here car.save()
我想知道,如果这是正确/正确的方式,或其任何"自动"方式来做到这一点.
它可以将逻辑放在Car()构造函数中,我应该这样做吗?
非常感谢!
使用get_or_create()
管理器的方法,然后根据需要修改返回的实例.