【发布时间】:2018-04-13 15:50:16
【问题描述】:
在我的项目流程中,我首先在 Orders 中创建了一个数据库条目。此时,foreign_key transaction_profile 保持为空。稍后在我的 checkout_page 视图中,创建了 transaction_profile。
transaction_profile.save() 发生后,我想将新创建的 Transaction_Profile 与 Order.objects.filter(order_id=request.session['order_id']) 的 Order 模型条目连接起来。
我现在真的很难完成这项工作。这里有人如何帮助我找到正确的轨道?
结帐>views.py
def checkout_page(request):
if request.POST:
transaction_profile = TransactionProfileModelForm(request.POST)
if transaction_profile.is_valid():
transaction_profile.save()
o = Order.objects.filter(order_id=request.session['order_id'])
#if qs.count() == 1:
o.transaction_profile.add(transaction_profile)
else:
transaction_profile = TransactionProfileModelForm()
context = {
'transaction_profile': transaction_profile,
}
[...]
交易 > 模型.py
class TransactionProfile(models.Model):
email = models.EmailField()
address_line_1 = models.CharField(max_length=120)
address_line_2 = models.CharField(max_length=120, null=True, blank=True)
city = models.CharField(max_length=120)
country = models.CharField(max_length=120)
state = models.CharField(max_length=120)
postal_code = models.CharField(max_length=120)
update = models.DateTimeField(auto_now=True)
timestamp = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.email
订单>models.py
class Order(models.Model):
order_id = models.CharField(max_length=10, unique=True)
updated = models.DateTimeField(auto_now=True)
timestamp = models.DateTimeField(auto_now_add=True)
transaction_profile = models.ForeignKey(TransactionProfile, blank=True, null=True, on_delete=models.CASCADE)
【问题讨论】:
标签: django foreign-keys models