2
У меня есть ошибка синтаксиса со следующим кодом:Джанго get_or_create с параметром дефолтов
ids_row={}
ids_row["releve_annee"]=int(row[0])
ids_row["releve_mois"]=int(row[1])
ids_row["no_ordre"]=int(row[2])
defaults={}
defaults["titre_rmc"]=row[3].strip()
defaults["notes"]=row[17].strip()
instance, created = Act.objects.get_or_create(**ids_row, defaults=defaults)
Моя модель:
class Act(models.Model):
releve_annee=models.IntegerField(max_length=4, blank=False, null=False)
releve_mois=models.IntegerField(max_length=2, blank=False, null=False)
no_ordre=models.IntegerField(max_length=2, blank=False, null=False)
titre_rmc=models.CharField(max_length=2000, blank=False, null=False)
notes=models.CharField(max_length=2000, blank=True, null=True, default=None)
class Meta:
unique_together=(("releve_annee", "releve_mois", "no_ordre"),)
В оболочке:
instance, created = Act.objects.get_or_create(**ids_row, defaults=defaults)
^
SyntaxError: invalid syntax
Если я удалить defaults=defaults
, ошибка исчезает. Что не так?
Wow! Оно работает! :) В чем была проблема? – rom
У вас не может быть никаких аргументов * args или ** kwargs в начале любой функции. Они всегда заканчиваются. – GordonsBeard
Хорошо, интересно знать. Большое спасибо вам обоим. – rom