Django - проблема отображения контекста - PullRequest
0 голосов
/ 30 апреля 2020

Я бы хотел в своем шаблоне user_profile. html фильтровать только предложения о работе, относящиеся к категории.1, но здесь он ничего не отображает. Я не могу понять, есть ли ошибка на моих моделях или шаблоне. Таким образом, в шаблоне это будет что-то вроде «если оценка пользователя> 1, то отобразить все предложения о работе, которые связаны с этим тестом». Если вы пройдете викторину Data Science, вы должны увидеть только предложения категории Data Science.

Надеюсь, я четко описал проблему. Я работал над этой проблемой несколько дней и до сих пор не могу ее решить.

core / user_profile. html

    {% extends 'base.html'%}

{% block content %}

{% for category,score in categories_scores %}

<div class="card">
  <div class="card-header">
    {{ category.1 }} Score
  </div>

  <div class="card-body">
    <h5 class="card-title">CONGRATS!</h5>
    <p class="card-text"> Here your SCORE: </p>
    <a href="#" class="btn btn-primary">{{ score }}</a>
    {% if score > 1 %}
    {% if request.user == user %}
    <br>
    <br>
    <div class="progress">
      <div class="progress-bar bg-success" role="progressbar" style="width: 99%" aria-valuenow="99" aria-valuemin="0" aria-valuemax="100"></div>
    </div>
    <p class="card-text">  Congratulations! Now you can apply to:</p>
  <br>
{% for job in jobs %}
{% if category.1 == job.categoria %}


<div id="accordion">
  <div class="card">
    <div class="card-header" id="headingOne">
      <h5 class="mb-0">
        <button class="btn btn-link" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
          {{job.posizione}} <strong> {{job.nome_azienda}} </strong>
        </button>
      </h5>
    </div>

    <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion">
      <div class="card-body">
          <ul>
    <li>    {{job.descrizione}} </li>
    <li>    {{job.email_referente}} </li>
         </ul>
      </div>
    </div>
  </div>

{% endif %}
{% endfor %}
{% endif %}
    {% else %}
    <br>
    <br>

    <div class="progress">
      <div class="progress-bar bg-warning" role="progressbar" style="width: 25%" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100"></div>
    </div>
    <p class="card-text">  Still not meet the requirements to apply, keep going! </p>
    {% endif %}
  </div>
</div>
<br>


{% endfor %}

{% endblock content %}

jobs / models.py

from django.db import models
from django.contrib.auth.models import User



# Create your models here.
LAVORO_CHOICES = (
    ('datascience', 'DataScience'),
    ('productowner', 'ProductOwner'),
    ('businessanalyst', 'BusinessAnalyst'),)

# declaring a Student Model


class post_job(models.Model):

    posizione= models.CharField(max_length=20)
    descrizione= models.TextField(max_length=60)
    requisiti= models.TextField(max_length=60)
    nome_azienda= models.CharField(max_length=20, default=' inserisci nome')
    email_referente= models.CharField(max_length=20, default='inserisci email')
    categoria = models.CharField(
      max_length = 20,
      choices = LAVORO_CHOICES,
      default = 'datascience'
      )




    def __str__(self):
        """String for representing the MyModelName object (in Admin site etc.)."""
        return self.posizione

jobs / views.py

from django.shortcuts import render
from .models import post_job
from .forms import post_jobModelForm
from django.http import HttpResponse

# Create your views here.



def viz_job(request):
    jobs = post_job.objects.all()
    return render(request,'jobs/jobs.html',{'jobs': jobs})

quiz / models.py

from django.contrib.auth.models import User
from django.db import models

# Create your models here.

class Questions(models.Model):
    CAT_CHOICES = (
    ('datascience', 'DataScience'),
    ('productowner', 'ProductOwner'),
    ('businessanalyst', 'BusinessAnalyst'),

)


    question = models.CharField(max_length = 250)
    optiona = models.CharField(max_length = 100)
    optionb = models.CharField(max_length = 100)
    optionc = models.CharField(max_length = 100)
    optiond = models.CharField(max_length = 100)
    answer = models.CharField(max_length = 100)
    catagory = models.CharField(max_length=20, choices = CAT_CHOICES)
    student = models.ManyToManyField(User)
    class Meta:
        ordering = ('-catagory',)

    def __str__(self):
        return self.question
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...