[Fixed]-Best way to create Django instances while manipulating/hiding fields from caller?

1👍

Maybe you can add a Person manager to your Person model class like this:

objects = PersonManager()

Then define a method inside PersonManager() that creates a person:

class PersonManager(models.Manager):
    def create_person(name, age):
        return self.create(name=name, year_of_birth=datetime.datetime.now().year-age)

And you’d use it like this:

person = Person.objects.create_person("Dude", 23)

Leave a comment