django-models - 模板中的模型属性
问题描述
我想添加我从链接到另一个模型的模型中添加的属性
这是我的模型:
class valuation(models.Model):
stock = models.ForeignKey("stock",on_delete=models.CASCADE,related_name='valuation',)
date = models.DateField(auto_now_add=True)
val_type = models.CharField(choices=TYPE, max_length=1,default='R')
user = models.ForeignKey("users.User", on_delete=models.CASCADE)
decision = models.BooleanField(verbose_name="clicked if u invest?", default=False)
def __str__(self):
return f"{self.stock} - {self.date} - {self.val_type}"
evolQuote = (
(1, 'High'),
(0, 'Undetermine'),
(-1, 'Low'))
class val_detail_Swing(models.Model):
valuation = models.OneToOneField(valuation, on_delete=models.CASCADE)
cycleMarket = models.IntegerField(choices=evolQuote, null=False, blank=False,default=0)
news = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
managementPostion = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
short =models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
BARCHART_analysts = models.IntegerField(choices=evolQuote, blank=True, verbose_name= "What BARCHAT says? ",default=0)
TRADINGVIEW_analysts = models.IntegerField(choices=evolQuote, blank=True, verbose_name= "What TRADINGVIEW says? ",default=0)
INVESTING_analysts = models.IntegerField(choices=evolQuote, blank=True,verbose_name= "What INVESTING says? ",default=0)
parabolics = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
trix = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
arron = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
macd = models.IntegerField(choices=evolQuote,null=False, blank=False,default=0)
def rates(self):
marketRate = self.cycleMarket + self.news + self.managementPostion + self.short
analystRate = self.BARCHART_analysts + self. TRADINGVIEW_analysts + self.INVESTING_analysts
indicatorRate = self.parabolics + self.arron + self.macd
return marketRate, indicatorRate,analystRate
在我的 val_detail_swing 模型上,我添加了费率:
我的观点是:
class valuationDetailview(DetailView):
template_name = "evaluation/evaluation_detail.html"
queryset = valuation.objects.all()
context_object_name = "valuation"
我的模板以此开头:
div id="accordion">
<div class="card">
<div class="card-header" id="headingOne">
<h5 class="mb-0">
<button class="btn btn-link" data-toggle="collapse" data-target="#collapseOne" aria-expanded="false" aria-controls="collapseOne">
<div class="row">
<div class="col">Market trend</div>
<div class="center"><input class="speech-bubble" value="{{ valuation.val_detail_swing.rates.marketRate }}" id="marklRate" name="markRate"></div>
</div>
</button>
</h5>
</div>
{{valuation.val_detail_swing.rates.marketRate }} 保持为空。我希望在我的详细视图中显示一个值,该值是我的 val_detail_Swing 实例的模型选择值的总和
解决方案
您从费率中获得的回报并未将 marketRate 指定为命名事物。使用命名元组或 {{valuation.val_detail_swing.rates.0 }}(零是第一个位置)。
如果你只显示 {{valuation.val_detail_swing.rates }} 我想你会看到它是一个没有名字的元组,只是位置。
推荐阅读
- javascript - WordPress 主题首页 JavaScript 需要在页面某处执行但只出现在页脚?
- mysql - 结合2表
- python - “自我”和“数字”有什么区别
- c# - SignalR accessTokenFactory 不将令牌传递给请求查询字符串
- javascript - 如何通过 keydown 事件在输入中添加文本
- python - 当我的 if 语句为真时,为什么我的 else 语句会运行?
- javascript - 如何在带有类型编号的html文本字段中同时输入英文和阿拉伯数字
- java - 得到一个错误:com.android.volley.ParseError: org.json.JSONException: Value
我尝试通过 API 从数据库中获取数据,但 recyclerview 不显示任何内容,并且日志显示错误。
这是我的代码
- ruby-on-rails - 如何将正则表达式字符串存储在辅助方法中以用于验证几个不同的字段?
- docusignapi - 我可以使用复合模板从服务器模板中删除选项卡吗?