首页 > 解决方案 > 如何在没有任何模板标签的情况下在 django 中使用 sql 数据,例如我只有一个数据

问题描述

我正在建立一个投资组合,我只是在学习 django,我试图从 SQL 中的 About 中获取数据,因为我只有一条数据,我不需要循环,所以我尝试直接放置它,但似乎我不能这样做。关于我如何做到这一点的任何建议

 <section id="about">
    <div class="container">
      <div class="about-large d-none d-lg-block text-uppercase">About</div>
      <div class="about-me row mt-5">
        <div class="my-image col-md-5">
          <img src="{{ about.image }}" />
        </div>
        <div class="my-description col-md-6">
          <h3>About Me</h3>
          <h4>I am {{about.name}}</h4>
          <p>{{ about.description }}</p>
          <p>{{ about.description_two }}</p>
          <div class="cv-hire d-flex flex-start">
            <button type="button" class="btn btn-dark font-weight-bold">
              <a href="{{ about.cv }}">Download <i class="fas fa-download pl-2"></i></a>
            </button>
          </div>
        </div>
      </div>
    </div>
  </section>

我在 sqllite 中的数据

我的观点.py

from django.shortcuts import render
from django.views.generic import TemplateView
from .models import *


class HomeTemplateView(TemplateView):
   template_name = 'home.html'

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    context['about'] = About.objects.first()
    context['services'] = Service.objects.all()
    context['works'] = RecentWork.objects.all()
    return context

我的模型.py

from django.db import models

class About(models.Model):
image = models.ImageField(upload_to="static/img")
name = models.CharField(max_length=100,verbose_name="My Name")
description = models.CharField(max_length=500, verbose_name="Description")
description_two = models.CharField(max_length=500, verbose_name="Description", blank=True)
cv = models.FileField(upload_to="static/document")

class Meta:
    verbose_name = "About Me"
    verbose_name_plural = "About Me"

def __str__(self):
    return "About Me"

标签: djangodjango-modelsdjango-viewsdjango-templates

解决方案


我会做一些检查:

  • 在 Django shell 中返回 About.objects.first() 是什么?
  • 仅使用 {{ about.cv }} 制作模板以避免其他影响。

然后我可以查看是否存在预期数据以及模板的收入。


推荐阅读