在Django中监视用户活动

在Django中监视用户活动,第1张

概述我正在创建一个书籍应用程序,用户可以在其中注册并开始阅读. 这是本书的model.py: from django.db import modelsfrom django.urls import reversefrom django.conf import settingsclass Chapter(models.Model): title = models.CharField( 我正在创建一个书籍应用程序,用户可以在其中注册并开始阅读.

这是本书的model.py:

from django.db import modelsfrom django.urls import reversefrom django.conf import settingsclass Chapter(models.Model):    Title = models.CharFIEld(max_length=200,unique=True)    slug = models.SlugFIEld(unique=True)    date_completed = models.DateTimeFIEld(blank=True,null=True)    completed = models.BooleanFIEld(default=False)    def __str__(self):        return self.Title    def get_absolute_url(self):        return reverse("course:subchapter_List",kwargs={"pk": self.pk})class SubChapter(models.Model):    chapter = models.ForeignKey(Chapter,on_delete=models.CASCADE)    Title = models.CharFIEld(max_length=200,unique=True)    slug = models.SlugFIEld(unique=True)    completed = models.BooleanFIEld(default=False)    def __str__(self):        return self.Titleclass SubSection(models.Model):    sub_chapter = models.ForeignKey(SubChapter,unique=True)    slug = models.SlugFIEld(unique=True)    text = models.TextFIEld(null=True,blank=False)    completed = models.BooleanFIEld(default=False)    def __str__(self):        return self.Title    def get_absolute_url(self):        return reverse("course:detail",kwargs={"slug": self.sub_chapter.slug,"slug2": self.slug,"pk": self.sub_chapter.chapter.pk,}                       )

如何监视每个用户的进度,以便在查看/读取子节/子章节时,该模型实例的已完成属性仅为该用户设置为True?我当前的实现设置已完成为每个人的True.

我希望代码片段能够展示如何实现它.

解决方法 如果要监视每个用户的阅读进度,则无法在Chapter,SubChapter和SubSection模型上获得完整的字段,您需要一个与用户相关的新字段.我会做这样的事情:

class ReadingProgress(models.Model):    user = models.ForeignKey(User)    completed_chapter = models.ForeignKey(Chapter)    completed_subchapter = models.ForeignKey(SubChapter)    completed_subsection = models.ForeignKey(SubSection)

如果您有不同的书籍,则还应将外键添加到书籍模型中.

然后在获取章节,章节等的视图中,您可以获取特定用户的ReadingProgress对象(并预订?)并设置相应的值.

总结

以上是内存溢出为你收集整理的在Django中监视用户活动全部内容,希望文章能够帮你解决在Django中监视用户活动所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1197736.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存