我目前正在尝试创建一个网站,通过该网站我可以搜索产品,搜索结果将是来自不同网站的搜索结果的汇总。
我的模型如下:
class Product(models.Model):
name = models.CharField(max_length=100)
image_file = models.ImageField(upload_to='images/')
image_url = models.URLField(max_length=200)
url = models.URLField(max_length=200)
price = models.CharField(max_length=10)
目前,我的实现涉及从不同页面抓取搜索结果并提取所需的信息。这包括从这些页面下载每个产品图像。然后将所有这些产品存储在数据库中。为了为下一次搜索做准备,每当我进入“搜索”页面(结果页面中没有搜索栏)时,我都会删除数据库的所有内容,还会删除我下载的图像文件。
def index(request):
if Product.objects.all().exists():
Product.objects.all().delete()
shutil.rmtree('img directory') #deletes everything in directory
return render(request, 'myproject/index.html')
这无疑是一种糟糕的处事方式。我应该怎么做才能避免每次都这样做?也许有一些方法可以使数据库条目在一段时间后自动删除自己?
谢谢!