在Django模型中,一个django用户应该有许多设备(一对多关系)。该设备应具有全局(!)唯一的mac地址,这意味着没有其他用户拥有具有该mac地址的设备。这就是我使用" unique = true"这很容易。但是,我如何允许一个用户自由选择devicename,但是限制所选择的devicename只允许自己一次(不是全局唯一的,仅适用于这个用户)。我的意思是,可以有两个用户" UserA"和" UserB",两者都可以命名他们的设备"皮卡丘"但是" UserA"不得打电话给他的第二个设备"皮卡丘"试。
这是我的模特。
order_items
有什么想法吗?
答案 0 :(得分:0)
这可能会有所帮助:
class Device(models.Model):
user = models.ForeignKey(User)
mac = models.CharField(max_length=17, default='00:00:00:00:00:00', unique=True)
devicename = models.CharField(max_length=20, default='', unique=True)
class Meta:
unique_together = ('user', 'devicename')