在視圖中,我想獲取汽車對象,然後更改first_year
var。For loop in views
def cars(request, mark_id, year=year):
#BMW, etc.
mark = get_object_or_404(Mark, pk=mark_id, active=1)
#M, X-series, etc.
for group in mark.groups.iterator():
group.first_year.year = int(year)-int(group.first_year.year)
return render(request, 'cars.html', { 'mark':mark, })
所以,在模板使用:
{% for i in mark.groups.all %}
{{i.first_year}}
{% endfor %}
它從數據庫返回的值,而不是我的group.first_year.year
。正如你所能理解的那樣,有三種模式 - 標記,組和first_year。如果你需要,我可以在這裏發佈它們,但我認爲,我的觀點有問題。
謝謝。
編輯。楷模。
class First_Year(models.Model):
year = models.IntegerField()
def __unicode__(self):
return str(self.year)
class Groups(models.Model):
many_other_fields
mark = models.ForeignKey(Mark, related_name='groups')
last_update = models.DateTimeField()
first_year = models.ForeignKey(First_Year, related_name='first_year')
def __unicode__(self):
return self.name
def altered_date(self, year):
altered_year = int(year)-int(self.first_year.year)
return altered_year
沒有模型馬克,bacause它有沒有一年多了,許多領域等
哇,謝謝!這很棒!!! – tim 2013-02-28 17:24:15
但它不工作正確:'int()參數必須是一個字符串或數字,而不是'First_Year',因爲我有First_Year模型,我試着'altered_year = int(year)-int(self.first_year.year )',並且它返回''long'對象沒有屬性'altered_date'' – tim 2013-02-28 17:50:03
我的答案是根據您的組模型中的年份字段量身定製的。你應該把'altered_year'函數放在具有'date'的模型上。如果是「First_Year」模型,則將函數放在那裏並相應地調整我的答案。或張貼您的模型。 – 2013-02-28 17:52:46