from django.db import models class Member(models.Model): ''' Member model represets one member on the registry ''' first_name = models.CharField(max_length=127) last_name = models.CharField(max_length=127) email = models.EmailField() POR = models.CharField(max_length=255) # place of residence AYY = models.BooleanField(default=False) jas = models.BooleanField(default=False) def get_dict(self): return { 'id':self.id, 'first_name':self.first_name, 'last_name':self.last_name, 'email':self.email, 'POR':self.POR, 'AYY':self.AYY, 'jas':self.jas, } @classmethod def create_from_dict(cls,d): mbr = cls() mbr.update_from_dict(d) return mbr.get_dict() def update_from_dict(self,d): dmap = { 'first_name': 'first_name', 'last_name': 'last_name', 'email': 'email', 'POR': 'POR', 'AYY': 'AYY', 'jas': 'jas', } for k,v in d.items(): try: self.__setattr__(dmap[k],v) except KeyError: pass self.save() def __str__(self): return "{} {}".format(first_name, last_name)