Naming an abstract model Django

What is the standard for naming Django abstract classes? My team leader insists that the name of the abstract model should consist of the fields available in it. for example, IsPublishedAndCreatedAt. But My class:

class BaseContentProperties(models.Model):
    is_published = models.BooleanField()
    created_at = models.DateTimeField()
    
    class Meta:
        abstract = True

class Category(BaseContentProperties): ...
class Location(BaseContentProperties): ...
class Post(BaseContentProperties): ...

But if there are more fields, then the name will be more, for example, IsPublishedAndCreatedAtAndPublishedAt.... Who is right?)

If there are some generally established recommendations on this issue, you can send a link so that you can familiarize yourself. Thanks

I described my problem above

Django documentation

Your "BaseContentProperties" is very similar to the example that Django's documentation on models gives for Abstract Base Classes. I think it's a good common-sense way of approaching the naming of an Abstract Base Class, and it seems to agree with Django's documentation.

A critique of Django's documentation

This GitHub Gist by jrobichaud discusses the same issue you bring up, but he shows that Django's documentation itself is a bit inconsistent on the issue and suggests that "Abstract" be used in the name of "Abstract Models" and "Abstract Base Models" (not totally sure which of these two you would consider your "BaseContentProperties" model, but he goes into a bit more depth, so hopefully this link is helpful).

Back to Top