如果我想让一个List只由一个用户编写,那么models.py会是什么样子? [用户可以创建多个列表]]

时间:2016-10-22 19:10:05

标签: python django models

这是models.py:

class List(models.Model):
'''
This is the database table definition of List objects
'''
user=models.ForeignKey(User,on_delete=models.CASCADE)
name=models.CharField(blank=False,max_length=255)
timestamp=models.DateTimeField(auto_now_add=True)


class Meta:
    unique_together=['name','user']
    ordering = ['-timestamp']

def __str__(self):
    return self.name

def __unicode__(self):
    return self.name

这会产生错误:

    user_obj1 = get_user_obj_by_name('Conor Lalor')
    user_obj2=get_user_obj_by_name()

    list_obj = List.objects.create(
        user=user_obj1,
        name='demo_list',
    )
    #with self.assertRaises(ValidationError):
    user_obj2.list_set.add(list_obj)

所以我的问题是我应该如何设计我的models.py以获得所需的错误或验证。我知道这些可以在forms.py中清理,但在这个级别我应该如何产生这个简单的错误? 提前谢谢。

0 个答案:

没有答案