首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Django列表视图中显示外键

无法在Django列表视图中显示外键
EN

Stack Overflow用户
提问于 2022-07-28 11:10:15
回答 1查看 33关注 0票数 0

我试图在我的列表视图中显示主键的外键信息,它只是没有显示,我无法在我的生活中找出原因。

型号:

主要的

代码语言:javascript
复制
class LightHouse(models.Model):
    customer = models.ForeignKey('users.CustomUser', on_delete=models.CASCADE,  related_name='lighthouse_group')
    context_object_name = 'lighthouse'
    lighthouseName = models.CharField(max_length=35, default="Not a lighthouse")

涉外

代码语言:javascript
复制
class Endpoint(models.Model):

    lighthouse = models.ForeignKey(LightHouse, on_delete=models.CASCADE, related_name='LHName')
    device = models.CharField(max_length=50, unique=True)

PK的Django模板

代码语言:javascript
复制
<tbody>
          {% for endpoint in lighthouse.endpoint_set.all%}
          <ul>
            <td>{{ endpoint.device }}</td>
            <td>{{ endpoint.endpointIPv4 }}</td>
            <td> Online </td>
          </ul>
          {% endfor %}
        </tbody>

我错过了什么,它不会显示FK?

EN

回答 1

Stack Overflow用户

发布于 2022-07-28 11:56:59

对于你的问题“我不能为我的生命弄清楚原因。”原因是当您试图查看外键数据时,您必须将其视为对象列表,因为“灯塔”是"lighthouse“模型的外键,因此当试图查看"lighthouseName”时,应以"{{lighthouse.lighthouseName}}“方式显示单个数据行。

代码语言:javascript
复制
      {% for endpoint in lighthouse.endpoint_set.all%}
      <ul>
        <td>{{ endpoint.device }}</td>
        <td>{{ endpoint.lighthouse.lighthouseName}}</td>
        <td> Online </td>
      </ul>
      {% endfor %}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73151896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档