Der erste mit dem Sie die Manager
Methode create
. Es ist bereits für Sie implementiert und wird automatisch gespeichert.
Die zweite Methode, die Sie eine Instanz der Klasse Author
erstellen, dann rufen Sie speichern auf.
Also abschließend,
Author.objects.create(name="Joe")
erstellen -> save()
die andere erste Zeile erstelle und zweite Zeile speichern.
In einigen Fällen müssen Sie die Managermethode immer aufrufen. Zum Beispiel müssen Sie das Passwort hashen.
# In here you are saving the un hashed password.
user = User(username="John")
user.password = "112233"
user.save()
# In here you are using the manager method,
# which provide for you hashing before saving the password.
user = User.objects.create_user(username="John", password="112233")
Also im Grunde, in Ihren Modellen darüber als Setter denken. Wenn Sie die Daten während der Erstellung immer ändern möchten, verwenden Sie Manager.
mögliches Duplikat von [Django: Unterschied zwischen save() und create() aus Transaktionsperspektive] (http://stackoverflow.com/questions/4206819/django-difference-between-save-and-create-from-transaction -Perspektive) – ozgur