我从表单中的用户收集了一些值,这些值保存到数据库中。我想获取这些值,在函数中对它们执行操作,然后返回它们,以便我可以将它们与其他上下文一起使用。
这是我的模特:
#models.py file
class MyModel(models.Model):
varA = models.PositiveIntegerField()
varB = models.PositiveIntegerField()
varC = models.PositiveIntegerField()
这是我正在使用的外部功能:
#makecalc.py
def MakeCalc(varA, varB, varC):
#simplified from what I am actually doing
varD = varA*varB**varC
varE = varA+varB+varC
return varD, varE
这是views.py文件:
#views.py file
from .makecalcs import MakeCalc
class MySummary(DetailView):
model = MyModel
def get_vars(self):
varD, varE = MakeCalc(varA, varB, varC) #Am I passing this correctly?
return varD, varE #How do I send these to context?
最后是html:
<p> you input: {{ MyModel.varA }}</p>
<p> you input:{{ MyModel.varB }}</p>
<p> you input:{{ MyModel.varC }}</p>
<p> I output:{{ varD }}</p> #how do I call this?
<p> you input:{{ varE }}</p> #how do I call this?
所以,我的问题是在视图中,如何将varD,varE添加到上下文中,以便我可以将它与模型中的varA,varB和varC一起使用?
答案 0 :(得分:2)
将get_context_data()方法添加到您的视图中,如下所示:
def get_context_data(self, **kwargs):
context = {}
context['your_custom_var'] = 'your_custom_value'
return super(MySummary, self).get_context_data(**context)