如何在Django应用程序中查看特定的联系人列表或仅查看我的联系人?

时间:2014-03-04 15:06:45

标签: django

我正在创建一个Django应用程序。一旦我使用用户名和密码登录,我将有两个链接:

  1. 添加联系人
  2. 我的联系人。
  3. 好!!现在,当我点击“我的联系人”时,我将获得所有用户的列表。但我只想查看我的联系人,我的意思是与这些特定用户凭据相关联的联系人。

    有人可以帮助我解决如何处理这种情况吗?

    以下是代码:即使我提供有效信息,也会将其显示为无效信息!!

    addcontact view:

    def addcon(请求):          如果request.method =='POST':              form = ContactForm(request.POST)          如果form.is_valid():                  name = request.POST.get('name')              dob = request.POST.get('dob')              mobile = request.POST.get('mobile')              email = request.POST.get('email')              a =联系人(姓名=姓名,dob = dob,mobile = mobile,email = email)              a.save()              return render_to_response('success.html')         其他:              返回HttpResponse('无效字段') 联系表格:

    来自django导入表格

    class ContactForm(forms.Form):

    name = forms.CharField()
    
    dob = forms.DateField()
    
    email = forms.EmailField()
    
    mobile = forms.IntegerField()
    

    addcontact html file

    1 {%extends“base.html”%}

    2 {%block content%}

    3 {%if form.errors%}

    4抱歉,这不是有效的用户名或密码

    5 {%endif%}

    6

    7 logout

    8

    9

    10

    添加联系人


    11姓名:

    12 DOB:

    13手机:

    14电子邮件:

    15

    16

    17

    18& nbsp& nbsp& nbsp& nbsp

    19

    20

    21 {%endblock%}

2 个答案:

答案 0 :(得分:1)

您应该在 ContactForm 模型中添加当前联系人所属的另一个字段(已登录的用户)

from django.contrib.auth.models import User

class ContactForm(forms.Form):
    contact_belongs_to = models.ForeignKey(User, on_delete=models.CASCADE)
    name = forms.CharField()
    dob = forms.DateField()
    email = forms.EmailField()
    mobile = forms.IntegerField()

然后按User.id过滤

答案 1 :(得分:0)

听起来您需要过滤查询结果 - 请参阅django docs on making queries

你的模特也可能有多对多的关系,所以我建议你阅读django docs on many-to-many relationships

注意 - 如果您发布了一些代码(特别是模型和视图),将会更容易为您提供帮助