Skip to content
Snippets Groups Projects
Commit 7e41cac2 authored by Jacek Lebioda's avatar Jacek Lebioda
Browse files

Pythonic names in models

parent 33c352d3
No related branches found
No related tags found
No related merge requests found
......@@ -50,4 +50,4 @@ class AppointmentDetailForm(ModelForm):
class VisitDetailForm(ModelForm):
class Meta:
model = Visit
exclude = ['visitFinished']
exclude = ['is_finished']
......@@ -6,7 +6,7 @@ from django.contrib.auth.models import User, AnonymousUser
import datetime
def get_current_year():
def get_is_current_year():
return datetime.datetime.now().year
class Language (models.Model):
......@@ -42,39 +42,39 @@ class Subject(models.Model):
)
def mark_as_dead(self):
self.subjectStatus = 'DEA'
self.status = 'DEA'
self.save()
def mark_as_rejected(self):
self.subjectStatus = 'REJ'
self.status = 'REJ'
self.save()
sex = models.CharField(max_length=1,
choices=SEX_CHOICES,
verbose_name='Sex'
)
firstName = models.CharField(max_length=50,
first_name = models.CharField(max_length=50,
verbose_name='First name'
)
lastName = models.CharField(max_length=50,
last_name = models.CharField(max_length=50,
verbose_name='Last name'
)
languages = models.ManyToManyField(Language,
verbose_name='Known languages'
)
phoneNo = models.CharField(max_length=20,
phone_number = models.CharField(max_length=20,
verbose_name='Phone number'
)
email = models.EmailField(
verbose_name='E-mail'
)
born = models.DateField(
verbose_name='Date born'
date_born = models.DateField(
verbose_name='Date date_born'
)
address = models.CharField(max_length=255,
verbose_name='Address'
)
postalCode = models.CharField(max_length=6,
postal_code = models.CharField(max_length=6,
verbose_name='Postal code'
)
city = models.CharField(max_length=50,
......@@ -83,29 +83,29 @@ class Subject(models.Model):
country = models.CharField(max_length=50,
verbose_name='Country'
)
screeningNo = models.CharField(max_length=50,
screening_number = models.CharField(max_length=50,
verbose_name='Screening number'
)
ndno = models.CharField(max_length=6,
nd_number = models.CharField(max_length=6,
verbose_name='ND number'
)
visitNumber = models.IntegerField(
visit_count = models.IntegerField(
verbose_name='Number of visits'
)
mpowerId = models.CharField(max_length=20,
mpower_id = models.CharField(max_length=20,
verbose_name='MPower ID'
)
subjectStatus = models.CharField(max_length=3, choices=STATUS_CHOICES,
status = models.CharField(max_length=3, choices=STATUS_CHOICES,
verbose_name='Status',
default='NCO'
)
mainPseudonym = models.CharField(max_length=45,
main_pseudonym = models.CharField(max_length=45,
verbose_name='Pseudonym'
)
comments = models.CharField(max_length=2000,
verbose_name='Comments'
)
dateAdded = models.DateField(verbose_name='Added on',
date_added = models.DateField(verbose_name='Added on',
auto_now=True
)
referral = models.CharField(max_length=128,
......@@ -123,20 +123,20 @@ class Subject(models.Model):
)
def __str__(self):
return "%s %s" % (self.firstName, self.lastName)
return "%s %s" % (self.first_name, self.last_name)
def __unicode__(self):
return "%s %s" % (self.firstName, self.lastName)
return "%s %s" % (self.first_name, self.last_name)
class Visit(models.Model):
subject = models.ForeignKey(Subject, on_delete=models.CASCADE,
verbose_name='Subject'
)
visitBegin = models.DateTimeField(
datetime_begin = models.DateTimeField(
verbose_name='Visit starts at'
)
visitEnd = models.DateTimeField(
datetime_end = models.DateTimeField(
verbose_name='Visit ends at'
) # Deadline before which all appointments need to be scheduled
TYPE_CHOICES = (
......@@ -144,21 +144,21 @@ class Visit(models.Model):
('B', 'Level B visit'),
('O', 'Other')
)
visitType = models.CharField(max_length=1, choices=TYPE_CHOICES,
visit_type = models.CharField(max_length=1, choices=TYPE_CHOICES,
verbose_name='Visit type',
default='O'
)
visitFinished = models.BooleanField(
is_finished = models.BooleanField(
verbose_name='Has ended',
default=False
)
def __str__(self):
return "%s %s %d" % (self.subject.firstName, self.subject.lastName, self.assesmentNo)
return "%s %s %d" % (self.subject.first_name, self.subject.last_name, self.assesmentNo)
class Item (models.Model):
isFixed = models.BooleanField(
is_fixed = models.BooleanField(
default=False,
verbose_name='Is the item fixed?'
)
......@@ -170,9 +170,8 @@ class Item (models.Model):
return self.name
class Room (models.Model):
possEquipment = models.ManyToManyField(Item,
equipment = models.ManyToManyField(Item,
verbose_name='On-site equipment',
blank=True
)
......@@ -185,21 +184,22 @@ class Room (models.Model):
city = models.CharField(max_length=50,
verbose_name='City'
)
roomNo = models.IntegerField(
room_number = models.IntegerField(
verbose_name='Room number'
)
floor = models.IntegerField(
verbose_name='Floor'
)
isVehicle = models.BooleanField(
is_vehicle = models.BooleanField(
verbose_name='Is a vehicle?'
)
def __str__(self):
return "%d %s %s" % (self.roomNo, self.address, self.city)
return "%d %s %s" % (self.room_number, self.address, self.city)
class AppointmentType (models.Model):
requiredEquipment = models.ManyToManyField(Item,
required_equipment = models.ManyToManyField(Item,
verbose_name='Required equipment'
)
code = models.CharField(max_length=20,
......@@ -208,16 +208,17 @@ class AppointmentType (models.Model):
description = models.CharField(max_length=2000,
verbose_name='Appointment description'
)
defaultTime = models.IntegerField(
verbose_name='Default time'
default_duration = models.IntegerField(
verbose_name='Default duration (in minutes)'
)
restTime = models.IntegerField(
rest_time = models.IntegerField(
verbose_name='Suggested rest time'
)
def __str__(self):
return self.apCode
class Worker (models.Model):
languages = models.ManyToManyField(Language,
verbose_name='Known languages'
......@@ -228,13 +229,13 @@ class Worker (models.Model):
user = models.OneToOneField(User, blank=True, null=True,
verbose_name='Username'
)
firstName = models.CharField(max_length=50,
first_name = models.CharField(max_length=50,
verbose_name='First name'
)
lastName = models.CharField(max_length=50,
last_name = models.CharField(max_length=50,
verbose_name='Last name'
)
phoneNo = models.CharField(max_length=20,
phone_number = models.CharField(max_length=20,
verbose_name='Phone number'
)
unit = models.CharField(max_length=50,
......@@ -257,14 +258,14 @@ class Worker (models.Model):
verbose_name='Specialization'
)
def isOnLeave(self):
if len(self.holiday_set.filter(holidayEnd__gt=datetime.datetime.now(),
holidayStart__lt=datetime.datetime.now())):
def is_on_leave(self):
if len(self.holiday_set.filter(datetime_end__gt=datetime.datetime.now(),
datetime_start__lt=datetime.datetime.now())):
return True
return False
def __str__(self):
return "%s %s" % (self.firstName, self.lastName)
return "%s %s" % (self.first_name, self.last_name)
@staticmethod
def get_details(the_user):
......@@ -291,61 +292,64 @@ class FlyingTeam(models.Model):
psychologist = models.ForeignKey(Worker, related_name='FlyingTeamPsychologist',
verbose_name='Psychologist'
)
dateTimeCalled = models.DateTimeField(
datetime_called = models.DateTimeField(
verbose_name='Created on'
)
dateTimeUntil = models.DateTimeField(
datetime_until = models.DateTimeField(
verbose_name='Disbanded on'
)
def __str__(self):
return "%s %s %s" % (self.doctor.lastName, self.nurse.lastName, self.psychologist.lastName)
return "%s %s %s" % (self.doctor.last_name, self.nurse.last_name, self.psychologist.last_name)
class Avaibility(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE,
verbose_name='Worker'
)
dayNo = models.IntegerField(
day_number = models.IntegerField(
verbose_name='Day of the week'
)
availFro = models.TimeField(
available_from = models.TimeField(
verbose_name='Avaible since'
)
availTil = models.TimeField(
available_till = models.TimeField(
verbose_name='Avaible until'
)
current = models.BooleanField(
is_current = models.BooleanField(
verbose_name='Is current?',
default=True
)
def __str__(self):
return "%d %s %s" % (self.dayNo, self.person.lastName, self.person.firstName)
return "%d %s %s" % (self.day_number, self.person.last_name, self.person.first_name)
class Holiday(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE,
verbose_name='Worker'
)
holidayStart = models.DateTimeField(
datetime_start = models.DateTimeField(
verbose_name='On leave since'
)
holidayEnd = models.DateTimeField(
datetime_end = models.DateTimeField(
verbose_name='On leave until'
)
def __str__(self):
return "%s %s" % (self.person.firstName, self.person.lastName)
return "%s %s" % (self.person.first_name, self.person.last_name)
class Appointment(models.Model):
flyingTeam = models.ForeignKey(FlyingTeam,
flying_team = models.ForeignKey(FlyingTeam,
verbose_name='Flying team (if applicable)',
null=True, blank=True
)
workerAssigned = models.ForeignKey(Worker,
worker_assigned = models.ForeignKey(Worker,
verbose_name='Worker conducting the assessment (if applicable)',
null=True, blank=True
)
appointmentType = models.ForeignKey(AppointmentType,
appointment_type = models.ForeignKey(AppointmentType,
verbose_name='Appointment type',
null=True, blank=True
)
......@@ -355,13 +359,13 @@ class Appointment(models.Model):
visit = models.ForeignKey(Visit,
verbose_name='Visit ID'
)
appDateTime = models.DateTimeField(
datetime_when = models.DateTimeField(
verbose_name='Appointment on'
)
appLength = models.IntegerField(
verbose_name='Appointment length'
length = models.IntegerField(
verbose_name='Appointment length (in minutes)'
)#Potentially redundant; but can be used to manually adjust appointment's length
appFinished = models.BooleanField(
is_finished = models.BooleanField(
verbose_name='Has the appointment ended?',
default=False
)
......@@ -39,12 +39,12 @@
<tbody>
{% for planned in planning_list %}
<tr>
<td>{{ planned.visit.subject.firstName }} {{ planned.visit.subject.lastName }}</td>
<td>{{ planned.visit.subject.first_name }} {{ planned.visit.subject.last_name }}</td>
<td>
<button type="button" class="btn btn-block btn-default btn-xs">See full information</button>
</td>
<td>
{{ planned.appDateTime }}
{{ planned.datetime_when }}
</td>
<td>
<button type="button" class="btn btn-block btn-default">Details</button>
......@@ -78,13 +78,13 @@
{% for approach in approaching_list %}
<tr>
<td>
{{ approach.visit.subject.firstName }} {{ approach.visit.subject.lastName }}
{{ approach.visit.subject.first_name }} {{ approach.visit.subject.last_name }}
</td>
<td>
<a href="{% url 'web.views.subject_details' approach.visit.subject.id %}" type="button" class="btn btn-block btn-default">Subject's details</a>
</td>
<td>{{ approach.appDateTime | date:"d-M-Y" }}</td>
<td>{{ approach.appDateTime | time:"H:i" }}</td>
<td>{{ approach.datetime_when | date:"d-M-Y" }}</td>
<td>{{ approach.datetime_when | time:"H:i" }}</td>
<td>
<a href="{% url 'web.views.assignment_details' approach.id %}" type="button" class="btn btn-block btn-default">Details</a>
</td>
......@@ -137,8 +137,8 @@
events: [
{% for approach in approaching_list %}
{
title: '{{ approach.visit.subject.firstName }} {{ approach.visit.subject.lastName }}',
start: '{{ approach.appDateTime | date:"c" }}',
title: '{{ approach.visit.subject.first_name }} {{ approach.visit.subject.last_name }}',
start: '{{ approach.datetime_when | date:"c" }}',
color: '#cfc600',
subject_id: '{{ approach.visit.subject.id }}',
id: '{{ approach.id }}'
......
......@@ -34,8 +34,8 @@
{% for record in avmon %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -68,8 +68,8 @@
{% for record in avtue %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -102,8 +102,8 @@
{% for record in avwed %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -136,8 +136,8 @@
{% for record in avthu %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -170,8 +170,8 @@
{% for record in avfri %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -204,8 +204,8 @@
{% for record in avsat %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......
......@@ -39,7 +39,7 @@
<h3>Monday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -58,8 +58,8 @@
{% for record in avmon %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -77,7 +77,7 @@
<h3>Tuesday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -96,8 +96,8 @@
{% for record in avtue %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -115,7 +115,7 @@
<h3>Wednesday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -134,8 +134,8 @@
{% for record in avwed %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -153,7 +153,7 @@
<h3>Thursday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -172,8 +172,8 @@
{% for record in avthu %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -191,7 +191,7 @@
<h3>Friday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -210,8 +210,8 @@
{% for record in avfri %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......@@ -229,7 +229,7 @@
<h3>Saturday</h3>
<div class="new-availability">
<a href="{% url 'web.views.doctor_add' %}" class="btn btn-app">
<a href="#" class="btn btn-app">
<i class="fa fa-plus"></i>
Add new avaibility</a>
</div>
......@@ -248,8 +248,8 @@
{% for record in avsat %}
<tr>
<td> {{forloop.counter}} </td>
<td> {{record.availFro}} </td>
<td> {{record.availTil}} </td>
<td> {{record.available_from}} </td>
<td> {{record.available_till}} </td>
<td><a href="{% url 'web.views.doctor_availability_delete' id record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td>
</tr>
{% endfor %}
......
......@@ -43,8 +43,8 @@
{% for worker in doctors_list %}
<tr>
<td>{{ forloop.counter }}</td>
<td>{{ worker.firstName }}</td>
<td>{{ worker.lastName }}</td>
<td>{{ worker.first_name }}</td>
<td>{{ worker.last_name }}</td>
<td>
{% autoescape off %}
{% for language in worker.languages.all %}
......@@ -57,7 +57,7 @@
<td><a href="{% url 'web.views.doctor_edit' worker.id %}" type="button" class="btn btn-block btn-default">Edit</a></td>
<td><a href="{% url 'web.views.doctor_availability' worker.id %}" type="button" class="btn btn-block btn-default">Modify availability</a></td>
<td>
{% if worker.isOnLeave %}<button type="button" class="btn btn-block btn-danger">YES</button>
{% if worker.is_on_leave %}<button type="button" class="btn btn-block btn-danger">YES</button>
{% else %}<button type="button" class="btn btn-block btn-success">NO</button>
{% endif %}
</td>
......
......@@ -49,10 +49,10 @@
<tbody>
{% for subject in subjects_list %}
<tr>
<td>{{ subject.ndno }}</td>
<td>{{ subject.screeningNo }}</td>
<td>{{ subject.firstName }}</td>
<td>{{ subject.lastName }}</td>
<td>{{ subject.nd_number }}</td>
<td>{{ subject.screening_number }}</td>
<td>{{ subject.first_name }}</td>
<td>{{ subject.last_name }}</td>
<td>{{ subject.country }}</td>
<td>
{% autoescape off %}
......@@ -61,7 +61,7 @@
{% endfor %}
{% endautoescape %}
</td>
<td>{{ subject.get_subjectStatus_display }}</td>
<td>{{ subject.get_status_display }}</td>
<td>12-10-2016</td>
<td><a href="{% url 'web.views.subject_details' subject.id %}" type="button" class="btn btn-block btn-default">Details</a></td>
<td><a href="{% url 'web.views.subject_edit' subject.id %}" type="button" class="btn btn-block btn-default">Edit</a></td>
......
......@@ -99,7 +99,7 @@
<td>{{ app.appDateTime | time:"H:i" }}</td>
<td>{{ app.appLength }}</td>
<td>
{% if app.flyingTeam %}{{ app.workerAssigned.firstName }} {{app.workerAssigned.lastName}}
{% if app.flyingTeam %}{{ app.workerAssigned.first_name }} {{app.workerAssigned.last_name}}
{% else %} {{ app.flyingTeam }}
{% endif %}
</td>
......
......@@ -40,21 +40,21 @@
<tbody>
{% for visit in visit_list %}
<tr>
<td>{{ visit.subject.firstName }} {{ visit.subject.lastName }}</td>
<td>{{ visit.subject.first_name }} {{ visit.subject.last_name }}</td>
<td>
<a href="{% url 'web.views.visit_details' visit.id %}" type="button" class="btn btn-block btn-default">Details</a>
</td>
<td>
{{ visit.visitBegin }}
{{ visit.datetime_begin }}
</td>
<td>
{{ visit.visitEnd }}
{{ visit.datetime_end }}
</td>
<td>
{{ visit.get_visitType_display }}
{{ visit.get_visit_type_display }}
</td>
<td>
{% if visit.visitFinished %}<button type="button" class="btn btn-block btn-danger">YES</button>
{% if visit.is_finished %}<button type="button" class="btn btn-block btn-danger">YES</button>
{% else %}<button type="button" class="btn btn-block btn-success">NO</button>
{% endif %}
</td>
......
......@@ -54,7 +54,7 @@ def logout(request):
def visits(request):
visit_list = Visit.objects.order_by('-visitBegin')
visit_list = Visit.objects.order_by('-datetime_begin')
context = {
'visit_list': visit_list
}
......@@ -64,7 +64,7 @@ def visits(request):
def visit_details(request, id):
displayedVisit = Visit.objects.get(id=id)
visFinished = displayedVisit.visitFinished
visFinished = displayedVisit.is_finished
displayedSubject = displayedVisit.subject
listOfAppointments = displayedVisit.appointment_set.all()
vform = VisitDetailForm(instance=displayedVisit)
......@@ -74,7 +74,7 @@ def visit_details(request, id):
def subjects(request):
subjects_list = Subject.objects.order_by('-lastName')
subjects_list = Subject.objects.order_by('-last_name')
context = {
'subjects_list': subjects_list
}
......@@ -130,7 +130,7 @@ def subject_mark(request, id, as_what):
def doctors(request):
doctors_list = Worker.objects.order_by('-lastName')
doctors_list = Worker.objects.order_by('-last_name')
context = {
'doctors_list': doctors_list
}
......@@ -171,12 +171,12 @@ def doctor_details(request, doctor_id):
def doctor_availability(request, doctor_id):
avall = Avaibility.objects.filter(person=doctor_id)
avmon = avall.filter(dayNo=1)
avtue = avall.filter(dayNo=2)
avwed = avall.filter(dayNo=3)
avthu = avall.filter(dayNo=4)
avfri = avall.filter(dayNo=5)
avsat = avall.filter(dayNo=6)
avmon = avall.filter(day_number=1)
avtue = avall.filter(day_number=2)
avwed = avall.filter(day_number=3)
avthu = avall.filter(day_number=4)
avfri = avall.filter(day_number=5)
avsat = avall.filter(day_number=6)
context = {
'avmon': avmon,
......@@ -216,7 +216,7 @@ def mail_templates(request):
def assignments(request):
planning_list = Appointment.objects.none()
approaching_list = Appointment.objects.filter(appDateTime__gt = datetime.datetime.now())
approaching_list = Appointment.objects.filter(datetime_when__gt = datetime.datetime.now())
context = {
'planning_list': planning_list,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment