Wha*_*2Hz 3 python django django-models
当我使用以下命令设置多个唯一字段时UniqueConstraint:
class Meta:
constraints = (models.UniqueConstraint(fields=['student', 'classroom', 'code'], name='student_classroom_code'))
Run Code Online (Sandbox Code Playgroud)
并运行python manage.py makemigrations引发此错误:
TypeError: 'UniqueConstraint' object is not iterable
Run Code Online (Sandbox Code Playgroud)
这有什么问题吗?
您需要将 iterable 分配给约束。您缺少,in (models.UniqueConstraint(...),),这意味着您正在分配models.UniqueConstraint实例而不是元组。
class Meta:
constraints = (models.UniqueConstraint(fields=['student', 'classroom', 'code'], name='student_classroom_code'),)
Run Code Online (Sandbox Code Playgroud)