我的应用程序的架构 - 1个视图要求“外国”模型

时间:2013-11-07 17:13:35

标签: django django-models architecture

我有2个应用:帐户蚂蚁合同。

我的“帐户”应用程序通过简单的模型关注用户的帐户:

class UserAccount(models.Model):
    user = models.OneToOneField(User)
    balance = models.FloatField()

我的“合同”应用程序涉及某些合同的管理。该模型通过auth.User one链接到UserAccount:

class Contract(models.Model):    
    amount_covered = models.FloatField()
    price = models.FloatField()
    user = models.ForeignKey(User, null=True)

现在,在我的“帐户”应用中,我有一个详细信息视图。在此视图中,我想添加用户的合同列表。所以我在考虑

class AccountDetailView(generic.DetailView):
    model = UserAccount
    template_name = 'accounts/detail.html'       

    def get_context_data(self, **kwargs):            
        context = super(AccountDetailView, self).get_context_data(**kwargs)

        # HERE I WILL CREATE A contracts LIST, (I DON'T KNOW EXACTLY HOW)


        context['contracts_list'] = contracts
        return context

此时我想知道我的架构:可以在一个视图中混合来自2个不同应用的2个数据模型吗?

1 个答案:

答案 0 :(得分:0)

是的,这绝对没问题。

但是,如果还没有,请考虑查看有关组织应用和模型的reusable app conventions或/或任何其他最佳做法文章。