【Django入门】第一个Django项目

Django,广为人知的Python Web框架,以其强大而又灵活的特点脱颖而出。其宣传口号是:"为完美主义者开发的框架"。这篇文章将为你揭示创建第一个Django项目的魔法以及Django项目的基本结构。

为什么选择Django?

在深入学习前,我们先看看为什么要选择Django:

  • 快速开发:Django遵循"约定优于配置"的原则,使得开发者能够专注于编写应用,而不是配置框架。
  • 安全性:Django具有内置的安全特性,可以帮助开发者避免常见的安全错误,如SQL注入、跨站脚本等。
  • 丰富的功能:Django自带了一个强大的ORM(对象关系映射)、Admin界面、认证系统等,减少了开发者从零开始构建这些功能的需要。

创建你的第一个Django项目

安装Django

打开CMD终端后输入pip install django

命令创建

在安装了Django后,你可以使用以下命令来创建你的第一个Django项目:

powershell 复制代码
django-admin startproject myproject

此命令将生成一个名为myproject的文件夹,它是你Django项目的根目录。

Pycharm创建

  1. 打开Pycharm界面,点击创建项目
  1. 选择Django,然后指定创建的文件夹,项目名称myproject,然后在existing interpreter中指定该项目所使用的的Python解释器,默认是使用你本地环境的,如果您设置了虚拟环境也可以设置成虚拟环境。


Django项目结构介绍

当你创建一个新的Django项目后,你会看到以下文件和文件夹结构:

shell 复制代码
myproject/
|-- manage.py
|-- myproject/
    |-- __init__.py
    |-- settings.py
    |-- urls.py
    |-- asgi.py
    |-- wsgi.py

我们一一解释每个文件和目录的作用:

  • manage.py:这是一个命令行工具,可以让你以各种方式与Django项目进行交互,例如运行服务器、创建数据库表等。
  • myproject/init.py:一个空文件,告诉Python这个目录应该被视为一个Python包。
  • myproject/settings.py:Django项目的配置文件。这里包括了数据库配置、应用注册、中间件、模板设置等。
  • myproject/urls.py:定义了项目的URL模式。每个URL都会映射到一个特定的视图函数。
  • myproject/asgi.py & wsgi.py:这两个文件用于项目的部署。asgi.py用于ASGI服务器,而wsgi.py用于WSGI服务器。

运行Django

在Pycharm中当我们配置好相关Django环境后,点击右上角小三角,运行系统,然后在pycharm的输出终端中点击:127.0.0.1:8000,会自动打开默认浏览器,这是一个初始的Django界面运行成功啦。


【注意】Django4.0的版本可能存在报错情况(NameError: name 'os' is not defined),这个在setting.py文件中加上一行import os即可

相关推荐
快乐的木子李21 分钟前
mysql-26.7.0-linux26.7.0下载安装
数据库·mysql
excel1 小时前
prisma 如何处理数据库竞态
前端·数据库·后端
知行产研2 小时前
易控智驾:毛利率跃升17.2个百分点,矿山无人驾驶从“规模换增长“迈入“盈利拐点“
数据库·mysql
千里码aicood2 小时前
基于CART算法的图书分类系统设计与实现
数据库·算法·分类
饺子大魔王的男人2 小时前
Redis 内存和连接异常怎么排查?用 redis_exporter 搭一套可远程抓取的监控链路
数据库·redis·bootstrap
可涵不会debug2 小时前
第一次学 LangGraph:用一个快递案例搞懂 State、Node、Edge 和 compile
服务器·数据库·mysql
IvorySQL3 小时前
PostgreSQL 日报 |RLS 机密性绕过漏洞(9 月 27 日)
数据库·postgresql
夕除3 小时前
redis--RDB AOF
数据库·redis·缓存
数据工匠老o4 小时前
"能用应用层解决的不用存储过程",十年数据库经验总结
数据库·架构
AC赳赳老秦4 小时前
公开音频转写信息提取:OpenClaw 处理发布会与听证会文本并提取核心决策信息
大数据·开发语言·汇编·数据库·人工智能·deepseek·openclaw