七.4报名表链接显示

客户库中如果客户未报名的应该显示添加报名表按钮,并且一旦添加了报名表这个状态就应该改成已报名。而下图中是我已经写死了,且这里可以查看当前客户的报名表--可在models.py中客户表中写一个方法--根据报名表来判断。

七.4报名表链接显示_第1张图片

 

 如下图:为做实验先删除几条记录

七.4报名表链接显示_第2张图片

 

(1)models.py中定义一个方法:

 你的客户是怎么跟报名表有关系的:

class Enrollment(models.Model):#报名表
  customer = models.ForeignKey('Customer', verbose_name='客户名称',on_delete=models.CASCADE)

可以看出你的客户是与报名表中的客户名字段关联关系的---所以你可在客户表中反向查询--self.enrollment_set拿到就是反向查询的管理对象

    def enroll_link(self):
        if not self.enrollment_set.exists():
            return mark_safe('添加报名表'.format(reverse('add_enrollment',args=(self.id,))))
        else:
            return mark_safe('添加 | 查看'.format(reverse('add_enrollment',args=(self.id,)),reverse('enrollment',args=(self.id,))))

 

(2)customer_list.html中使用上述定义的方法:

{% extends 'layout.html' %}

{% block css %}
    
{% endblock %}

{% block content %}
    
class="panel panel-default">
class="panel-heading">Panel heading
class="panel-body"> "{% url 'add_customer' %}?{{ query_params }}" class="btn btn-primary btn-sm">添加 {# {{ add_btn }}#}
"" class="form-inline pull-right"> "text" name="query" class="form-control">
"" method="post" class="form-inline"> {% csrf_token %} class="table table-condensed table-hover table-bordered"> {# #} {# #} {# #} {# #} {% if request.path_info == '/crm/my_customer/' %} {% endif %} {% for customer in all_customer %} {# #} {# #} {# #} {# #} {% if request.path_info == '/crm/my_customer/' %} {# #} {% endif %} {% endfor %}
选择 序号 QQQQ昵称 姓名 性别手机号客户来源 咨询课程 班级类型 状态咨询日期 最后跟进日期 销售 已报班级跟进记录 报名记录操作
"checkbox" name="id" value="{{ customer.id }}"> {{ forloop.counter }} {{ customer.qq }}{{ customer.qq_name|default:'暂无' }} {{ customer.name|default:'暂无' }} {{ customer.get_sex_display }}{{ customer.phone|default:'暂无' }}{{ customer.get_source_display }} {{ customer.course }} {{ customer.get_class_type_display }} {{ customer.show_status }} {{ customer.date }} {{ customer.last_consult_date }} {{ customer.consultant }} {{ customer.show_classes }}"{% url 'consult_record' customer.id %}">查看跟进添加报名表{{ customer.enroll_link }}"{% url 'edit_customer' customer.id %}?{{ query_params }}"><i class="fa fa-edit fa-fw">
"text-align: center">
{% endblock %}

效果如下图:未报名的客户我点击添加报表后就显示已报名并显示的是查看及添加标签:

七.4报名表链接显示_第3张图片

 

 七.4报名表链接显示_第4张图片

你可能感兴趣的:(七.4报名表链接显示)