My models are ...
我的模特是......
class StateManager(models.Manager):
def get_by_natural_key(self, name):
return self.get(name=name)
class DistrictManager(models.Manager):
def get_by_natural_key(self, name, state):
return self.get(name=name, state=state)
class State(models.Model):
class Meta:
verbose_name = "State"
verbose_name_plural = "States"
permissions = (
('access_state', 'Can access States'),
)
COUNTRIES = (
('India', 'India'),
('USA', 'USA'),
('Thailand', 'Thailand'),
)
# Managers
objects = StateManager()
# Database fields
name = models.CharField(
'Name',
max_length=100,
unique=True,
help_text='''
100 chars max
'''
)
code = models.CharField(
'Code',
max_length=10,
unique=True,
help_text='''
10 chars max
''',
null=True, blank=True
)
country = models.CharField(
max_length=50,
default="India",
choices=COUNTRIES,
blank=False,
null=False
)
def __str__(self):
return self.name
def natural_key(self):
return (self.name,)
class District(models.Model):
class Meta:
verbose_name = "District"
verbose_name_plural = "Districts"
unique_together = (
(
"state",
"name"
),
)
# Managers
objects = DistrictManager()
# Database fields
name = models.CharField(
'Name',
max_length=100,
help_text='''
100 chars max
'''
)
code = models.CharField(
'Code',
max_length=10,
help_text='''
10 chars max
''',
null=True, blank=True
)
state = models.ForeignKey(State)
def __str__(self):
return self.name
def natural_key(self):
return (self.name,) + self.state.natural_key()
natural_key.dependencies = ['parties.state']
class StateMa