To override a parent model’s attribute with Python Django,. we can create a child model that inherits from the parent.
For instance, we write
class AbstractPlace(models.Model):
name = models.CharField(max_length=20)
rating = models.DecimalField()
class Meta:
abstract = True
class Place(AbstractPlace):
pass
class LongNamedRestaurant(AbstractPlace):
name = models.CharField(max_length=255)
food_type = models.CharField(max_length=25)
to create the AbstractPlace
model which has some fields shared between Place
and LongNamedRestaurant
.
Then in LongNamedRestaurant
, we override the name
field from AbstractPlace
by setting name
to a models.CharField(max_length=255)
instead of models.CharField(max_length=20)
.