FieldDoesNotExist:ManyToManyField没有名为None的字段

cit*_*s88 8 python django manytomanyfield

我在Django 1.8.8中有两个模型:

class Company(models.Model):
    name = models.CharField(max_length=200)
    members = models.ManyToManyField(User)
class Folder(models.Model):
    name = models.CharField(max_length=200)
    slug = models.SlugField(null=True, blank=True)
    company = models.ForeignKey(Company, null=True, blank=True)
    parent = models.ForeignKey("Folder", null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

当我在模板中做的时候

{% for user in current_folder.company.members.all %}
Run Code Online (Sandbox Code Playgroud)

我有时(在几页重新加载后随机)得到非常奇怪的错误:

FieldDoesNotExist: Company_members has no field named None
Run Code Online (Sandbox Code Playgroud)

我也使用sqlite3数据库.任何人都知道哪里有问题?

小智 -2

数据库中可能存在重复的项目。

您可以使用以下命令列出模型中的所有项目来进行检查:

YourModel.objects.values_list('id', 'name')
Run Code Online (Sandbox Code Playgroud)

为了避免这种情况,请确保设置 unique=True。

name = models.CharField(max_length=200, unique=True)
Run Code Online (Sandbox Code Playgroud)