Я создал следующий документ, используя django -asticsearch-dsl
@skill.doc_type
class SkillDocument(DocType):
class Meta:
model = data_Skills
fields = {
'SKILL_ID',
'SKILL_NAME',
'DESCRIPTION',
}
Это моя модель навыков консультанта и консультанта
class data_Consultant(models.Model):
CONSULTANT_ID=models.AutoField(primary_key=True)
FIRST_NAME=models.CharField(max_length=50)
LAST_NAME=models.CharField(max_length=50)
EMAIL=models.CharField(max_length=255)
CONSULTANT_GRADE=models.CharField(max_length=50)
class data_ConsultantSkills(models.Model):
SKILL_LEVEL_SCORE=models.IntegerField()
SKILL_ID=models.ForeignKey(data_Skills, on_delete=models.CASCADE,to_field='SKILL_ID')
CONSULTANT_ID=models.ForeignKey(data_Consultant, on_delete=models.CASCADE, to_field='CONSULTANT_ID')
. Имеются следующие представления. В настоящее время я пытаюсь подобрать название навыка, и в результате я отфильтрую консультантов, имеющих этот конкретный навык
if choice == "Skillset": //form selection
skill= SkillDocument.search().query("match", SKILL_NAME=q)
for item_s in skill:
s_id = data_ConsultantSkills.objects.filter(SKILL_ID=item_s.SKILL_ID)
if s_id.exists():
for item_c in s_id:
cons_id = item_c.CONSULTANT_ID
consultant_name= data_Consultant.objects.filter(CONSULTANT_ID=cons_id.CONSULTANT_ID)
return render(request, 'search/Results.html', {'consultant_name':consultant_name})
. Ниже приведен мой HTML
{% for item in consultant_name %}
<tr><th>
{{item.FIRST_NAME}}
{{item.LAST_NAME}}
{{item.LAST_CLIENT}}
</th></tr>
<br>
{% endfor %}
Моя текущая проблемаявляется то, что он отображает только одни данные (последние добавленные данные) вместо отображения нескольких данных. Что мне нужно сделать, чтобы изменить это? Заранее спасибо!