sql >> Databasteknik >  >> RDS >> Mysql

Booleska fält i MySQL Django-modeller?

Du kan skapa din egen metod för din modell som utvärderar detta åt dig:

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

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

Då kan alla tester du utför mot det här fältet bara referera till metoden istället:

>>> u.is_active()
True

Du kan till och med göra detta till en egenskap:

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

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

så att användare av klassen inte ens behöver veta att den är implementerad som en metod:

>>> u.is_active
True


  1. Lagring av affärslogik i databasen

  2. Hur man flyttar data mellan 2 tabeller / med olika kolumner i olika databaser

  3. PostgreSQL - hur renderar man datum i olika tidszoner?

  4. Summa datediff i minuter med MySQL