簡體   English   中英

在Django中自動標記

[英]Automatic tagging in django

因此,我有一個名為Post的簡單django模型,其中包含有關發布消息的用戶及其自身消息的日期。

class Post(models.Model):
     user = models.ForeignKey(settings.AUTH_USER_MODEL,
     related_name="posts",null=False)
     text = models.CharField(max_length=400)
     date_created = models.DateField(auto_now_add=True,auto_now = False)
     date_modified = models.DateField(auto_now=True)
     tags = models.ManyToManyField(Tag,related_name="posts")

而且我需要實現一個類似twitter的標記系統。 因此,當Post被保存時,我需要從文本字段中捕獲標簽,並以某種方式將它們放置在many2many關系中,以便我能夠執行諸如'tag.posts'之類的事情來獲取所有帶有此標簽的Post或采用其他方式。 我有捕獲標簽的算法,但是在創建/編輯/保存帖子時,我堅持執行這種自動創建標簽對象的方法。 我已經嘗試覆蓋save方法,創建一個Manager或監聽post_save信號,但是它不起作用。

如何做到最好? 先感謝您!

我的建議是捕獲pre_save信號並創建不存在的標簽。

暫無
暫無

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

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