Ich habe zwei Modelle durch ein Viele-zu-viele-Feld bezogen.Django viele zu viele funktioniert nicht in unittest aber funktioniert in admin
class Tires(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
brand = models.CharField(max_length=50)
class Car(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
brand = models.CharField(max_length=50)
tires = models.ManyToManyField('Tires', blank=True)
Es funktioniert gut, wenn ich Reifen auf ein Auto durch die Admin-Seite hinzufügen, aber es in meinen Unittests nicht funktioniert und ich kann nicht herausfinden, was das Problem (etwas wirklich einfach wahrscheinlich)
istdas ist mein Unittest:
def test_many_to_many(self):
tires_1 = Tires(brand='bridgestone')
tires_1.save()
car_1 = Car(brand='BMW')
car_1.save()
car_1.tires.add(tires_1)
car_1.save()
Dies wirft keine Ausnahmen, aber wenn ich car_1.tires drucken, sagt es carthings.Tires.None ich habe es anders versucht, um und fügte hinzu, car_1 zu reifen_1. car_set aber das gibt das gleiche Ergebnis. Ich habe auch versucht, ein Objekt einer anderen Klasse im Viele-zu-Vielen-Feld hinzuzufügen, nur um zu sehen, was passieren würde, was einen Fehler verursacht. Es sieht so aus, als ob das Hinzufügen funktioniert, aber es spart einfach nicht oder so etwas?
Setzen Sie Bridgestone zwischen Apostrophe. – rfkortekaas
@rfkortekaas Ich werde das bearbeiten, es ist nicht das Problem, aber ich habe mein Modell ein wenig modifiziert, um es hier zu zeigen –