簡體   English   中英

如何安排要在 Django 中為模型創建的對象?

[英]How do I schedule objects to be created for a model in django?

我有一個創建通知的通知模型,我想安排在特定日期創建通知。 基本上,我的意思是使用另一個模型,我想在計划通知中指定的那個日期安排和創建通知。

我該怎么做? 實現這一目標的更簡單的方法是什么? 我能想到的只有rabbitmq和celery。 而且我什至不知道它會如何在動態日期創建通知。

class Notice(models.Model):
    title = models.CharField(max_length=200)
    contentt = RichTextField(blank=True, null=True)
    slug = models.SlugField(unique=True)


    def __str__(self):
        return self.title

class Schedule(models.Model):
    title = models.CharField(max_length=200)
    contentt = RichTextField(blank=True, null=True)
    date = models.DateTimeField()

    def __str__(self):
        return self.title

上面是一個 models.py 示例,用於闡明 o 的意思,我實際上沒有模型。 我使用 api 讀取和寫入外部 mongodb 中的集合。

因此,對於創建的每個計划,它使用其上的日期來創建包含標題和計划模型內容的通知。 因此,不同的人可以為通知創建時間表,並在特定日期創建它。 我該怎么做呢?

我假設你的意思是為每個計划對象創建,它會自動創建通知對象。

如果這就是你的意思。 您只需要使用內置信號

from django.dispatch import receiver
from django.db.models.signals import post_save

@receiver(post_save, sender=Schedule)
def post_save_schedule(sender, instance, created, **kwargs):
   if created:
      Notice.objects.create(
         title = instance.title, 
         content = instance.content
      )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM