nehme die folgenden einfachen Modelle:Django und Reverse-Beziehungen von Fremdschlüsseln
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headline = models.CharField(max_length=255)
body_text = models.TextField()
author = models.ForeignKey(User, related_name='author_set')
Wie kann ich alle Autoren erhalten, die in einem bestimmten Blog teilgenommen (das heißt pk = 1)? Ich habe so etwas versucht, aber es hat nicht funktioniert.
User.objects.author_set.filter(blog=Blog.objects.get(pk=1))
Vielen Dank im Voraus!
Haben Sie Klassenautor oder nicht? –
Nein, warum ist das wichtig? Das Autorenmodell ist das Standardbenutzermodell. – Clash
Sie können auch den Namen Ihres 'related_name' überdenken. Der zugehörige Name steht für Ihre Benutzerobjekte und wird auf den Eintragssatz abgebildet. Etwas wie 'related_name = 'entries' würde viel mehr Sinn ergeben. Auf diese Weise würde jedes Benutzerobjekt einen Eintrags-Abfrage-Satz haben. – dgel