2017-03-06 215 views
0

我有三个django模型(user,member (extended user),subscription),并与一个ForeignKey连接。保存数据到Django数据库

然后当用户想创建一个新帐户,我把它保存到数据库中,如下所示:

language = Language.objects.get(key="EN") 
country = Country.objects.get(key="BE") 

user = User() 
user.username = form.cleaned_data['email'] 
user.first_name = form.cleaned_data['first_name'] 
user.last_name = form.cleaned_data['last_name'] 
user.email = form.cleaned_data['email'] 
user.set_password(form.cleaned_data['password']) 
user.save() 

member = Member() 
member.number = form.cleaned_data['member_id'] 
member.name = '{} {}'.format(form.cleaned_data['firstname'], form.cleaned_data['lastname']) 
member.address = form.cleaned_data['address'] 
member.postcode = form.cleaned_data['postcode'] 
member.city = form.cleaned_data['city'] 
member.country = country 
member.telephone = form.cleaned_data['telephone'] 
member.mobile = form.cleaned_data['mobile'] 
member.user = user 
member.language = language 
member.active = False 
member.save() 

subscription = Subscription() 
subscription.started = datetime.date.today() 
subscription.type = Type.objects.get(default=True) 
subscription.member = member 
subscription.save() 

这工作正常。

但我想问问是否有更好的方法将其存储到数据库?

回答