Ich baue eine einfache Anwendung, um Django zu lernen.Get ManyToMany Objekte
Grundsätzlich kann ein Portfolio mehrere Unternehmen enthalten. Ich möchte die Firmen eines bestimmten Portfolios des angemeldeten Benutzers anzeigen.
Models.py
class UserPortfolio(models.Model):
name = models.CharField(max_length=128, default='X')
user = models.ForeignKey(User)
#Company = models.ManyToManyField(Company)
def __str__(self):
return self.name
class Company(models.Model):
name = models.CharField(max_length=128, default='X')
slug = models.SlugField(max_length=6, default='X', unique=True)
def get_absolute_url(self):
return reverse('news:detail',kwargs={'pk': self.pk})
def __str__(self):
return self.slug
class PortfolioCompany(models.Model):
UserPortfolio = models.ForeignKey(UserPortfolio)
Company = models.ManyToManyField(Company)
views.py
portfolio = UserPortfolio.objects.filter(user=self.request.user)
myPortfolioRel = PortfolioCompany.objects.filter(UserPortfolio=portfolio)
Aber jetzt nur zeigt es die ID des portfolioCompany.
Wie kann ich die Firmen im UserPortfolio anzeigen?
Ich brauche wahrscheinlich PortfolioCompany nicht, da das automatisch erstellt wurde, und fügen Sie es einfach (manytomany) an UserPortfolio direkt an. – Sharpless512