所以我有两个模特:
class UserMeasurements(models.Model):
user = models.CharField(max_length=20)
time = models.DateTimeField(blank=True, null=True)
set = models.ForeignKey(PhotoSets, models.DO_NOTHING)
class Meta:
managed = False
db_table = 'user_measurements'
class PhotoSets(models.Model):
image_dir = models.CharField(max_length=200)
machine = models.ForeignKey(Machine, models.DO_NOTHING)
set_id = models.AutoField(primary_key=True)
photo_taken_time = models.DateTimeField(blank=True, null=True)
class Meta:
managed = False
db_table = 'photo_sets'
在view.py中我有:
def Main(request):
measurement_list = UserMeasurements.objects.order_by('-time')
photo_set_list = PhotoSets.objects.all()
a = measurement_list.set.get_field('PhotoSets').rel.to
//this is where I try to get the related models
print str(a)
return render(request, 'main.html', {'measurement_list': measurement_list})
我正在尝试使用每个用户测量在网页中显示image_dir。 我检查了其他stackoverflow问题。但我仍然无法弄明白。
提前致谢。
答案 0 :(得分:2)
我不知道您尝试使用a
变量做什么,但您不需要执行此操作。输出每个测量值时,您应该只需按下外键,例如在模板中:
{% for measurement in measurement_list %}
User: {{ measurement.user }}
Time: {{ measurement.time }}
Image dir: {{ measurement.set.image_dir }}
{% endfor %}
请注意,这在文档中有相当全面的解释,特别是在他们使用民意调查问题和选择示例的教程中。
答案 1 :(得分:2)
您可以在main.html中试一试吗
{% for item in measurement_list %}
{{ item.image_dir }}
{% endfor %}