Django网站搭建流程
使用Django搭建网站是一个系统的过程,涉及从环境搭建到部署上线的多个步骤。以下是详细的流程:
1. 环境搭建
(1)安装Python
Django是基于Python的Web框架,因此需要先安装Python。建议安装Python 3.8及以上版本。
下载地址:Python官网。
(2)安装Django
使用pip安装Django:
pip install django
检查Django是否安装成功:
django-admin --version
2. 创建Django项目
(1)创建项目目录
打开终端或命令行工具,运行以下命令创建Django项目:
django-admin startproject myproject
其中myproject是项目的名称,你可以根据需要修改。
(2)进入项目目录
进入项目目录:
cd myproject
3. 创建Django应用
(1)创建应用
Django项目由多个应用组成,一个应用通常对应网站的一个功能模块。运行以下命令创建应用:
python manage.py startapp myapp
其中myapp是应用的名称。
(2)注册应用
将应用添加到项目的settings.py文件中:
Python复制INSTALLED_APPS = [...'myapp',
]
4. 定义模型(Model)
(1)编辑models.py
在myapp/models.py文件中定义数据模型。例如,定义一个简单的用户模型:
from django.db import modelsclass User(models.Model):username = models.CharField(max_length=100)email = models.EmailField()password = models.CharField(max_length=100)def __str__(self):return self.username
(2)生成数据库迁移文件
运行以下命令生成迁移文件:
python manage.py makemigrations
(3)应用迁移
运行以下命令将模型应用到数据库:
python manage.py migrate
5. 创建视图(View)
(1)编辑views.py
在myapp/views.py文件中定义视图逻辑。例如:
from django.shortcuts import render
from .models import Userdef home(request):users = User.objects.all()return render(request, "home.html", {"users": users})
6. 配置URL路由
(1)编辑urls.py
在myapp/urls.py文件中定义应用的路由:
from django.urls import path
from . import viewsurlpatterns = [path("", views.home, name="home"),
]
在项目的urls.py文件中包含应用的路由:
Python复制from django.contrib import admin
from django.urls import path, includeurlpatterns = [path("admin/", admin.site.urls),path("", include("myapp.urls")),
]
7. 创建模板(Template)
(1)创建模板文件
在myapp/templates目录下创建HTML模板文件(如home.html):
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Home</title>
</head>
<body><h1>User List</h1><ul>{% for user in users %}<li>{{ user.username }} - {{ user.email }}</li>{% endfor %}</ul>
</body>
</html>
8. 运行开发服务器
在开发阶段,Django自带一个轻量级的开发服务器,方便快速测试和调试。
(1)启动开发服务器
在终端中运行以下命令:
python manage.py runserver
默认情况下,服务器会在http://127.0.0.1:8000运行。
(2)访问网站
打开浏览器,访问http://127.0.0.1:8000,如果一切正常,你将看到网站的首页。
9. 数据库管理
Django自带一个强大的管理后台,方便对数据库进行操作。
(1)创建管理员用户
运行以下命令创建一个管理员用户:
python manage.py createsuperuser
按照提示输入用户名、邮箱和密码。
(2)登录管理后台
访问http://127.0.0.1:8000/admin,使用刚才创建的管理员账号登录。
(3)注册模型到后台
为了让模型出现在管理后台,需要在myapp/admin.py文件中注册它们。例如:
from django.contrib import admin
from .models import Useradmin.site.register(User)
这样,User模型就会出现在管理后台中,你可以通过后台添加、编辑或删除数据。
10. 静态文件和媒体文件
Django将静态文件(如CSS、JavaScript、图片)和媒体文件(用户上传的文件)分开管理。
(1)静态文件
将静态文件放在应用的static目录下,例如myapp/static/css/style.css。
在HTML模板中使用{% static %}模板标签引用静态文件:
<link rel="stylesheet" href="{% static 'css/style.css' %}">
(2)媒体文件
如果你的模型中包含文件字段(如ImageField或FileField),需要配置媒体文件的存储路径。
在settings.py中添加以下配置:
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
在项目的urls.py中添加媒体文件的URL配置(仅在开发环境中使用):
Python复制from django.conf import settings
from django.conf.urls.static import staticurlpatterns = [path("admin/", admin.site.urls),path("", include("myapp.urls")),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
用户上传的文件将存储在MEDIA_ROOT指定的目录中,并可以通过MEDIA_URL访问。
总结
第8步:启动Django开发服务器,用于本地开发和测试。
第9步:利用Django的管理后台管理数据库,方便数据的增删改查。
第10步:配置静态文件和媒体文件,确保网站的资源可以正确加载和访问。
这三步是开发过程中的重要环节,帮助你快速测试功能并管理网站的资源。
相关文章:
Django网站搭建流程
使用Django搭建网站是一个系统的过程,涉及从环境搭建到部署上线的多个步骤。以下是详细的流程: 1. 环境搭建 (1)安装Python Django是基于Python的Web框架,因此需要先安装Python。建议安装Python 3.8及以上版本。 下载地…...
Vue-day2
7.Vue的生命周期 mounted函数:在页面加载完毕时,发送异步请求,加载数据,渲染页面 createApp({date(){},methods:{},mounted:function(){console.log(Vue挂载完毕,发送请求获取数据)} }).mount(#{app}) 8.ajax函数库…...
Day44:列表元素的修改
在 Python 中,列表是一种可变的数据结构,意味着我们可以对列表中的元素进行修改。修改列表元素的方式有很多种,包括通过索引修改、切片修改、使用 append() 和 extend() 添加新元素、以及删除元素等。今天,我们将学习如何在列表中…...
在 AMD GPU 上使用 vLLM 的 Triton 推理服务器
Triton Inference Server with vLLM on AMD GPUs — ROCm Blogs 2025年1月8日,作者:Fabricio Flores,Tiffany Mintz,Eliot Li,Yao Liu,Ted Themistokleous,Brian Pickrell,Vish Vadl…...
day7手机拍照装备
对焦对不上:1、光太暗;2、离太近;3、颜色太单一没有区分点 滤镜可以后期P 渐变灰滤镜:均衡色彩,暗的地方亮一些,亮的地方暗一些 中灰滤镜:减少光差 手机支架:最基本70cm即可 手…...
HarmonyOS:创建应用静态快捷方式
一、前言 静态快捷方式是一种在系统中创建的可以快速访问应用程序或特定功能的链接。它通常可以在长按应用图标,以图标和相应的文字出现在应用图标的上方,用户可以迅速启动对应应用程序的组件。使用快捷方式,可以提高效率,节省了查…...
[SUCTF 2018]MultiSQL1
进去题目页面如下 发现可能注入点只有登录和注册,那么我们先注册一个用户,发现跳转到了/user/user.php, 查看用户信息,发现有传参/user/user.php?id1 用?id1 and 11,和?id1 and 12,判断为数字型注入 原本以为是简单的数字型注入,看到大…...
kafka-部署安装
一. 简述: Kafka 是一个分布式流处理平台,常用于构建实时数据管道和流应用。 二. 安装部署: 1. 依赖: a). Java:Kafka 需要 Java 8 或更高版本。 b). zookeeper: #tar fxvz zookeeper-3.7.0.tar.gz #…...
VUE3 使用路由守卫函数实现类型服务器端中间件效果
vue3中的router组件,有一个函数 router.beforeEach,可以实现请求中间件效果 使用方法如下: 前提已经在Vue3 项目中引入router组件,在router.js文件中加入router.beforeEach //路由守卫函数,类似于中间件session效果…...
|Python新手小白中级教程|第二十九章:面向对象编程(Python类的拓展延伸与10道实操题目)(5)
文章目录 前言1.类变量与实例变量2.静态方法和类方法1.静态方法2.类方法 3.实操使用1. 创建一个名为Person的类,包含属性name和age,并且有一个方法introduce()用于介绍自己的名字和年龄。2. 创建一个名为Circle的类,包含属性radius和color&am…...
项目概述与规划 (I)
项目概述与规划 (I) JavaScript的学习已经接近尾声了,最后我们将通过一个项目来讲我们在JavaScript中学习到的所有都在这个项目中展现出来,这个项目的DEMO来自于Udemy中的课程,作者是Jonas Schmedtmann; 项目规划 项目步骤 用户…...
mysql学习笔记-数据库的设计规范
1、范式简介 在关系型数据库中,关于数据表设计的基本原则、规则就称为范式。 1.1键和相关属性的概念 超键:能唯一标识元组的属性集叫做超键。 候选键:如果超键不包括多余的属性,那么这个超键就是候选键 主键:用户可以从候选键中选择一个作为主键。 外…...
实现B-树
一、概述 1.历史 B树(B-Tree)结构是一种高效存储和查询数据的方法,它的历史可以追溯到1970年代早期。B树的发明人Rudolf Bayer和Edward M. McCreight分别发表了一篇论文介绍了B树。这篇论文是1972年发表于《ACM Transactions on Database S…...
论文笔记(六十三)Understanding Diffusion Models: A Unified Perspective(四)
Understanding Diffusion Models: A Unified Perspective(四) 文章概括学习扩散噪声参数(Learning Diffusion Noise Parameters)三种等效的解释(Three Equivalent Interpretations) 文章概括 引用…...
C# 中 default 使用详解
总目录 前言 在C#中,default 关键字用于表示类型默认值。它可以根据上下文推断出适用的类型,并返回该类型的默认值。随着C#版本的发展,default 的用法也变得更加丰富和灵活。本文将详细介绍 default 在不同场景下的使用方法及其最佳实践。 一…...
Day21-【软考】短文,计算机网络开篇,OSI七层模型有哪些协议?
文章目录 OSI七层模型有哪些?有哪些协议簇?TCP/IP协议簇中的TCP协议三次握手是怎样的?基于UDP的DHCP协议是什么情况?基于UDP的DNS协议是什么情况? OSI七层模型有哪些? 题目会考广播域 有哪些协议簇&#x…...
电力晶体管(GTR)全控性器件
电力晶体管(Giant Transistor,GTR)是一种全控性器件,以下是关于它的详细介绍:(模电普通晶体管三极管进行对比学习) 基本概念 GTR是一种耐高电压、大电流的双极结型晶体管(BJT&am…...
C语言------指针从入门到精通
第一部分: 前言: 本篇文章主要划分为两大部分: 第一部分适合零基础的同学,主要学习了解指针的概念,对指针大概有个概念。如果你已经有基础,即可跳过第一部分的内容。 第二部分主要是分解指针的实现逻辑,通过19个例子,再结合代码公式把不同类型的指针及指针的应用详细…...
网络安全大模型和人工智能场景及应用理解
本文通过通俗易懂的方式的进行阐述,大家读完觉得有帮助记得及时关注和点赞!!! 一、网络安全大模型的概述 网络安全大模型是一种用于识别和应对各种网络安全威胁的模型。它通过分析网络数据包、网络行为等信息,识别潜在…...
大模型正确调用方式
1、ollama 安装 curl -fsSL https://ollama.com/install.sh | sh 如果是AutoDl服务器,可以开启学术加速。 source /etc/network_turbo 本次使用腾讯云Cloud Studio,所以已经安装好了 Ollama 2、启动 ollama run 模型的名字 ollama serve # 开启服务 olla…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...
从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践
作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...
MySQL的pymysql操作
本章是MySQL的最后一章,MySQL到此完结,下一站Hadoop!!! 这章很简单,完整代码在最后,详细讲解之前python课程里面也有,感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...
