I have two table(One-To-One relationship) :
class Member(models.Model):
openid = models.CharField(max_length=32)
realname = models.CharField(max_length=30, null=True, blank=True)
nickname = models.CharField(max_length=32)
join_date = models.DateField()
....more data ...
class MemberProfile(models.Model):
member = models.ForeignKey(Member)
position = models.ForeignKey(Position)
mobile = models.CharField(max_length=50, null=True, blank=True)
email = models.EmailField(null=True, blank=True)
....more data ...
Apparently, Member
is master table and MemberProfile
is slave.
But I find it is inconvenient to get MemberProfile
's data through by Member
.
If Member
has a ForeignKey link to MemberProfile
,such as :
class Member(models.Model):
profile = models.ForeignKey(MemberProfile)
openid = models.CharField(max_length=32)
realname = models.CharField(max_length=30, null=True, blank=True)
nickname = models.CharField(max_length=32)
join_date = models.DateField()
....more data ...
I can get the profile from a member more easily.
member = Member.objects.get(id=id)
I can retrieve profile by member.profile
rather than one more sentence:profile = MemberProfile.objects.get(member=member)
Is it better to move ForeignKey define in Member
??