python Django的显示个人信息详解

关于“python Django的显示个人信息详解”的攻略,我整理了以下流程,也包含两条示例说明。

1. 创建模型

在 Django 中,我们需要先创建一个模型,即个人信息的数据库模型。通过以下几个步骤可以实现:

1.1 在已有的 Django 项目中创建一个 app(如果还没有 app,可以先创建一个 app)

python manage.py startapp info

1.2 在 app 中新建一个 model.py 文件,编写个人信息模型(字段根据实际需求灵活设置)

from django.db import models

class Person(models.Model):
    name = models.CharField("姓名", max_length=30)
    age = models.IntegerField("年龄")
    sex = models.CharField("性别", max_length=2)
    email = models.EmailField("邮箱")
    phone = models.CharField("电话", max_length=20)
    address = models.CharField("地址", max_length=100)
    more = models.TextField("更多", null=True, blank=True)
    pub_date = models.DateTimeField("发布时间", auto_now_add=True)

    class Meta:
        ordering = ['-pub_date']
        verbose_name = "个人信息"
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.name

1.3 在 settings.py 文件中注册 app

INSTALLED_APPS = [
    ...
    'info',
]

1.4 创建数据库表(同步模型到数据库)

python manage.py makemigrations
python manage.py migrate

2. 编写视图函数

在 Django 中,视图函数负责根据 URL 请求,处理业务逻辑,最终返回响应结果。

2.1 views.py

在 app 中编写 views.py 文件,视图函数代码如下:

from django.shortcuts import render
from .models import Person

def person_detail(request, person_id):
    person = Person.objects.get(pk=person_id)
    return render(request, 'info/person_detail.html', {'person': person})

2.2 urlconf

绑定 URL 到视图函数,例如:

from django.urls import path
from . import views

app_name = 'info'
urlpatterns = [
    path('person/detail/<int:person_id>/', views.person_detail, name='person_detail'),
]

3. 编写模板

Django 的模板语言类似于 HTML,可以在其中加入变量和逻辑语句。

3.1 定义模板

在 app 下建立 templates 文件夹,并添加以下模板文件:

3.1.1 person_detail.html

{% extends 'base.html' %}
{% block content %}
<h1>{{ person.name }}的个人信息</h1>
<ul>
  <li>姓名:{{ person.name }}</li>
  <li>年龄:{{ person.age }}</li>
  <li>性别:{{ person.sex }}</li>
  <li>邮箱:{{ person.email }}</li>
  <li>电话:{{ person.phone }}</li>
  <li>地址:{{ person.address }}</li>
  {% if person.more %}
  <li>更多:{{ person.more }}</li>
  {% endif %}
</ul>
{% endblock %}

3.2 模板继承

我们可以创建一个基本的 HTML 模板,然后在模板中继承。这样,在多个页面使用到的同一个部分,将不会在多个页面中重复定义。

3.2.1 base.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{% block title %}Django Personal Info{% endblock %}</title>
</head>
<body>
{% block content %}
{% endblock %}
</body>
</html>

4. 显示个人信息

完成以上三个步骤之后,我们将在 Web 上显示个人信息。

示例一:URL 参数

from django.urls import reverse
person_id = 1
url = reverse('info:person_detail', args=(person_id,))

示例二:模板中使用 URL

<a href="{% url 'info:person_detail' person.id %}">{{ person.name }}</a>

希望这份攻略对你有用。如果还有疑问,可以在评论区咨询。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python Django的显示个人信息详解 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Django 开发环境与生产环境的区分详解

    以下是“Django 开发环境与生产环境的区分详解”攻略,包含介绍和两个示例: Django 开发环境与生产环境的区分详解 介绍 在 Django 网站的开发和部署过程中,我们需要区分开发环境和生产环境,两个环境的配置是有很大差别的。开发环境主要关注代码的编写和修改,调试,测试,而生产环境需要着重考虑网站的性能,安全性和稳定性。本文将详细讲解 Django …

    Django 2023年5月15日
    00
  • Python笔记(五)–Django中使用模板

      使用Django开发网站时,如果不使用模板,那么将会很不合理。因为我们所有的html代码都需要被硬编码到我们的Python代码中。我们新建一个工程,然后再在新建一个应用程序,并在其中的views.py文件中添加如下代码: 1 #coding=UTF-8 2 from django.http.response import HttpResponse, Ht…

    Django 2023年4月12日
    00
  • django创建简单的页面响应实例教程

    下面是关于“django创建简单的页面响应实例教程”的完整攻略及示例说明: 一、环境及工具准备 为了完成这个教程,您需要具备以下环境和工具: Python 3.x(已安装并配置好环境变量) pip 包管理器(已安装) Django web框架(已安装) 二、Django项目创建 首先,在控制台中使用以下命令创建一个 Django 项目: django-adm…

    Django 2023年5月16日
    00
  • Django ModelForm类生成表单

    1. 定义ModelForm类 #froms.py from django import forms from app01.modles import User class UserModelForm(forms.ModelForm): class Meta: model = User #关联的model类 fields = “__all__” #或(‘na…

    Django 2023年4月13日
    00
  • Django实现聊天机器人

    下面我将为您详细讲解“Django实现聊天机器人”的完整攻略。 1. 安装Django 我们首先需要安装Django,你可以通过以下命令安装: pip install django 2. 创建新的Django项目 接下来,我们需要创建一个新的Django项目,你可以使用以下命令: django-admin startproject chatbot 这将会在当…

    Django 2023年5月16日
    00
  • django基础知识之POST属性:

    QueryDict类型的对象 包含post请求方式的所有参数 与form表单中的控件对应 问:表单中哪些控件会被提交? 答:控件要有name属性,则name属性的值为键,value属性的值为键,构成键值对提交 对于checkbox控件,name属性一样为一组,当控件被选中后会被提交,存在一键多值的情况 键是开发人员定下来的,值是可变的 示例如下 定义视图po…

    Django 2023年4月12日
    00
  • 对Django中的权限和分组管理实例讲解

    下面我将为你讲解 “对Django中的权限和分组管理实例讲解”的完整攻略,具体过程包含两个示例。 示例1:创建并管理Django中的权限 步骤1:定义权限 首先,在Django中创建和管理权限,需要定义权限。可以在models.py文件或其它类中定义权限。示例如下: from django.contrib.auth.models import Permiss…

    Django 2023年5月16日
    00
  • Django admin美化插件suit使用示例

    下面为您详细讲解“Django admin美化插件suit使用示例”的完整攻略。该攻略包含两条示例说明。 美化Django Admin的插件suits Django Admin是Django默认自带的后台管理系统,功能强大,但是界面不够美观。为了让Django Admin变得更加优美,我们可以使用插件suits进行美化。 安装suits 我们可以通过pip安…

    Django 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部