SyntaxError: expression cannot contain assignment, perhaps you meant "=="? in Django Model

SyntaxError: expression cannot contain assignment, perhaps you meant "=="? in Django Model

我有以下 Django 模型

class Tag(models.Model):
    name = models.CharField(max_length=50, unique=True, editable=False)
    created_at = models.DateTimeField(default=datetime.now, editable=False)

当我尝试创建如下对象时,

Tag.objects.create(name='me','created_at'=str(datetime.now()))

我收到以下错误

Tag.objects.create(name='me','created_at'=str(datetime.now()))
                                 ^^^^^^^^^^^^^
SyntaxError: expression cannot contain assignment, perhaps you meant "=="?

我做错了什么?

只是打字错误,您传递的是字符串而不是标签

Tag.objects.create(name='me', created_at=str(datetime.now()))

在您的模型中,您可以使用 auto_now_add=True

像这样

class Tag(models.Model):
    name = models.CharField(max_length=50, unique=True, editable=False)
    created_at = models.DateTimeField(auto_now_add=True)

无需手动添加时间即可创建

Tag.objects.create(name='me')