Det, du ser, er den korrekte adfærd.
get_or_create
er en forkortelse for 'hent og returner det objekt, der matcher kwargs
, hvis det ikke findes, skal du oprette det ved hjælp af defaults
'. Dit opslag leder efter et objekt, hvor name
er et ufølsomt match til 'cedar'
. Det objekt eksisterer, så det returneres. Intet mere, intet mindre.
Hvis der ikke var noget match, har Stéphane ret, og du skal angive name
i defaults
parameter. Alle opslag, der indeholder opslagsseparatoren __
fjernes fra de parametre, der er sendt til create()
.