2
Angenommen habe ich die folgenden Django Klassen:Django wie auf ManyToManyField zu filtern?
in myclassa.py:
class MyClassA(models.Model):
name = models.CharField(max_length=254)
def my_method(self):
# WHAT GOES HERE?
in myclassb.py:
from myclassa import MyClassA
class MyClassB(models.Model):
name = models.CharField(max_length=254)
a = models.ManyToManyField(MyClassA, related_name="MyClassB_MyClassA")
Nehmen wir nun an Ich habe eine Instanz x
von MyClassA
. Was gebe ich in my_method()
, so dass es alle Instanzen von MyClassB
zurückgibt, die x
in ihrem Feld a
enthalten? Alternativ
def my_method(self):
return self.MyClassB_MyClassA.all()
, können Sie auch definieren als:
Dank. Der erste wird funktionieren. Die zweite Option wird nicht verwendet, da 'MyClassB' nicht in' myclassa.py' importiert wird. –
Verwenden Sie, was Ihren Anforderungen entspricht. In der Tat, 1. ist der bevorzugte Weg, um es zu erreichen. –