在 Django 中获取用户关注的主题?

维诺特·库马尔

我正在开发应用程序,用户可以在其中关注主题以获取更新。

下面是models.py

from django.contrib.auth.models import User

class Topic(models.Model):
    name = models.CharField(max_length=30, unique=True)
    description = models.CharField(max_length=300)
    created_on = models.DateTimeField(auto_now_add=True)
    created_by = models.ForeignKey(User, related_name='topic')
    def __str__(self):
        return self.name

class Follow(models.Model):
    topic = models.ForeignKey(Topic, related_name='follow')
    user = models.ForeignKey(User, related_name='follow')

视图.py

def home(req):
    user_id = req.user.id
    follow = Follow.objects.filter(user = req.user).all()
    follow = [f.topic for f in follow]
    question = Question.objects.filter(topic__in=follow).all()
    answer = Answer.objects.filter(ques__in=question).all()
    topic = Topic.objects.all().distinct(name)
    return render(req,'home.html',{'topic':topic,'answer':answer,'upvote':upvote})

模板:

            {% for t in topic %}   
                {% for ft in t.follow.all%}
                    {% if ft.user == user %}
                        <h4 id="{{t.pk}}" class="topCls"><span class="badge badge-success">{{t.name}}</span></h4>
                    {% endif %}
                {% endfor %}
            &nbsp;
            {% endfor %}

我需要让用户关注的主题为绿色,其他主题为红色

我可以获得用户关注的主题,如上,我如何区分关注与否?

提前致谢 !!!

从不独行者

您可以像这样检查以下列表中的主题:

{% for t in topic %}   
    {% if t in follow  %}
      <h4 id="{{t.pk}}" class="topCls"><span class="badge badge-success">{{t.name}}</span></h4>
    {% else %
      <h4 id="{{t.pk}}" class="topCls"><span class="badge badge-warning">{{t.name}}</span></h4>
    {% endif %}
&nbsp;
{% endfor %}

您需要将follow列表传递到上下文中:

def home(req):
    user_id = req.user.id
    follow = Topic.objects.filter(follow__user=req.user)
    question = Question.objects.filter(topic__in=follow).all()
    answer = Answer.objects.filter(ques__in=question).all()
    topic = Topic.objects.all().distinct(name)
    return render(req,'home.html',{'topic':topic,'answer':answer,'upvote':upvote, 'follow': follow})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从Django中的用户名获取用户对象

来自分类Dev

如何在Django中获取用户名

来自分类Dev

Django在模板中获取用户组

来自分类Dev

获取用户在Django上返回“ AnonymousUser”

来自分类Dev

Python Django获取用户输入

来自分类Dev

Django模型:从对象获取用户

来自分类Dev

如何过滤在django中未被关注的用户

来自分类Dev

如何在Django中的登录处理中获取用户会话?

来自分类Dev

如何在Django Rest Framework中的Model Serializer中获取用户实例

来自分类Dev

如何在Django中的登录处理中获取用户会话?

来自分类Dev

Django-保存用户后获取用户ID

来自分类Dev

Django使用用户个人资料获取用户

来自分类Dev

Django的python-social-auth。在VK.com中无法获取用户电子邮件

来自分类Dev

在Django 1.6中获取用户资料的新方法是什么?

来自分类Dev

如何在Django 1.9中获取用户个人资料

来自分类Dev

Django:从视图或模板中的模型获取用户信息的更好方法是什么?

来自分类Dev

在Django 1.6中获取用户资料的新方法是什么?

来自分类Dev

单击django重置密码链接时,如何从登录表单中获取用户名

来自分类Dev

Django:ContentType 对象访问,从 content_object 中获取用户

来自分类Dev

从 django 中的配置文件模型 __str__ 获取用户实例

来自分类Dev

如何通过 Django 中的电子邮件过滤获取用户对象

来自分类Dev

Django注册视图如何从用户表单中获取用户以将配置文件分配给用户

来自分类Dev

Django:从开发服务器获取用户IP

来自分类Dev

使用Django Social Auth从Facebook获取用户uid

来自分类Dev

Django的。Python Social Auth获取用户后端

来自分类Dev

django rest-auth获取用户个人资料

来自分类Dev

使用Django登录后获取用户信息

来自分类Dev

Django RestFramework JWT令牌:获取用户DidNotExist错误

来自分类Dev

Django刷新会话以获取用户的任何新消息

Related 相关文章

  1. 1

    从Django中的用户名获取用户对象

  2. 2

    如何在Django中获取用户名

  3. 3

    Django在模板中获取用户组

  4. 4

    获取用户在Django上返回“ AnonymousUser”

  5. 5

    Python Django获取用户输入

  6. 6

    Django模型:从对象获取用户

  7. 7

    如何过滤在django中未被关注的用户

  8. 8

    如何在Django中的登录处理中获取用户会话?

  9. 9

    如何在Django Rest Framework中的Model Serializer中获取用户实例

  10. 10

    如何在Django中的登录处理中获取用户会话?

  11. 11

    Django-保存用户后获取用户ID

  12. 12

    Django使用用户个人资料获取用户

  13. 13

    Django的python-social-auth。在VK.com中无法获取用户电子邮件

  14. 14

    在Django 1.6中获取用户资料的新方法是什么?

  15. 15

    如何在Django 1.9中获取用户个人资料

  16. 16

    Django:从视图或模板中的模型获取用户信息的更好方法是什么?

  17. 17

    在Django 1.6中获取用户资料的新方法是什么?

  18. 18

    单击django重置密码链接时,如何从登录表单中获取用户名

  19. 19

    Django:ContentType 对象访问,从 content_object 中获取用户

  20. 20

    从 django 中的配置文件模型 __str__ 获取用户实例

  21. 21

    如何通过 Django 中的电子邮件过滤获取用户对象

  22. 22

    Django注册视图如何从用户表单中获取用户以将配置文件分配给用户

  23. 23

    Django:从开发服务器获取用户IP

  24. 24

    使用Django Social Auth从Facebook获取用户uid

  25. 25

    Django的。Python Social Auth获取用户后端

  26. 26

    django rest-auth获取用户个人资料

  27. 27

    使用Django登录后获取用户信息

  28. 28

    Django RestFramework JWT令牌:获取用户DidNotExist错误

  29. 29

    Django刷新会话以获取用户的任何新消息

热门标签

归档