В моей модели у меня есть поле, которое должно содержать только значения «A», «B» и «C».Будет ли это лучше всего использовать для использования параметра choice
при объявлении поля?
Если бы я не решил использовать параметр choice
и хотел написать для него собственную логику проверки, куда бы я написалэто - это будет в clean
методе модели?Я также видел clean_<fieldname>
методы - для чего они применяются или применяются только к формам?Я хотел бы выполнить эту проверку в модели, так как я не использую форму.
class Action(models.Model):
"""
Contains the logic for the visit
"""
id = models.AutoField(primary_key=True)
path = models.CharField(max_length=65535, null=False)
to = models.IntegerField(null=False)
def clean(self, **kwargs):
"""
Custom clean method to do some validation
"""
#Ensure that the 'to' is either 1,2 or 3.
if self.to not in [0, 1, 2]:
raise ValidationError("Invalid to value.")
Когда я делаю проверку, нужно ли возвращать какое-то значение?Будет ли вызван метод моего метода, когда кто-то создаст новую запись?
(Хотя я прочитал документы, я все еще немного запутался в этом.)
Спасибо, тонна.1014 *