#python #django #models
#python #django #Модели
Вопрос:
Это 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)
Итак, мой вопрос в том, как мне следует разрабатывать свои модели.py, чтобы получить желаемую ошибку или проверку. Я знаю, что это можно сделать путем очистки в forms.py но на этом уровне, как я должен выдать эту простую ошибку?
Заранее спасибо.
Комментарии:
1. Почему это должно вызывать ошибку? В названии явно указано, что у пользователя может быть много списков.
2. Да, но список, в котором есть один пользователь, не может быть использован другим пользователем. @DanielRoseman