2017-09-25 1 views
0

Je suppose que je vais poser une question très simple, mais c'est un signe que je ne reçois toujours pas quelque chose. J'ai un modèle d'équipe et je voudrais afficher une liste de toute l'équipe que l'utilisateur connecté a créé.Diplay liste d'objets, ne fonctionne pas

J'ai essayé avec

{% extends 'base.html' %} 

{% block body %} 
<div class="container"> 

    <div class="jumbotron"> 
     <h2>Select one of your team and link it to your project</h2> 
    </div> 

    <div class="col-md-8 col-md-offset-2"> 
     {% for i in team_set.all %} 
      <p>{{ i.team_name }}</p> 
     {% endfor %} 

    </div> 


</div> 

{% endblock %} 

Mais d'abord, il ne présente rien et il est supposé montrer toute l'équipe et non seulement les équipes que l'utilisateur connecté actuel créé.

Pouvez-vous me donner un coup de main?

model.py:

class Team(models.Model): 
    team_name = models.CharField(max_length=100, default = '') 
    team_hr_admin = models.ForeignKey(MyUser, blank=True, null=True) 
    members = models.ManyToManyField(MyUser, related_name="members") 

    def __str__(self): 
     return self.team_name 

view.py:

class LinkTeam(TemplateView): 
    template_name= 'link_project.html' 

url.py:

from django.conf.urls import url, include 
from website import views 

app_name = 'website' 
urlpatterns = [ 
    url(r'^hr_index/$', views.HRIndex.as_view(), name='hr_index'), 
    url(r'^addproject/$', views.ProjectCreate.as_view(), name='add_project'), 
    url(r'^addteam/$', views.TeamCreate.as_view(), name='add_team'), 
    url(r'^linkteam/$', views.LinkTeam.as_view(), name='Link_team'), 
    url(r'^project/(?P<pk>[0-9]+)/$',views.ProjectDetailView.as_view(), name='ProjectDetails'), 
] 
+0

afficher la vue ... – Exprator

+0

sans vue sur comment pouvez-vous accéder aux données du modèle ??? –

+0

S'il vous plaît modifier votre réponse avec les modèles, vue, url et modèle HTML que vous essayez .. –

Répondre

1

Simplement, vous pouvez essayer cette

dans th e Voir

class LinkTeam(TemplateView): 

    template_name= 'link_project.html' 

    def get(request): 
     courts = Yourmodel.objects.all()   # worth looking into? 

     return render_to_response(self.template_name, {'courts': courts}) 

ET en HTML:

<div class="col-md-8 col-md-offset-2"> 
    {% for i in courts %} 
     <p>{{ i.team_name }}</p> 
    {% endfor %} 

</div> 
+0

Je reçois: get() prend 1 argument positionnel mais 2 ont été donnés – Ben2pop

+0

def get (self, request): –

+0

travaillé! ;) THX ! Comment feriez-vous la même chose en utilisant ListView savez-vous? – Ben2pop