Mysql
 sql >> Database >  >> RDS >> Mysql

Campi booleani nei modelli MySQL Django?

Potresti creare il tuo metodo per il tuo modello che lo valuti per te:

class User(models.Model):
    active_status = models.BooleanField(default=1)

    def is_active(self):
        return bool(self.active_status)

Quindi qualsiasi test eseguito su questo campo potrebbe semplicemente fare riferimento al metodo:

>>> u.is_active()
True

Puoi persino trasformarlo in una proprietà:

class User(models.Model):
    active_status = models.BooleanField(default=1)

    @property    
    def is_active(self):
        return bool(self.active_status)

in modo che gli utenti della classe non debbano nemmeno sapere che è implementato come metodo:

>>> u.is_active
True