跳到主要内容

Django 项目创建

介绍

Django 是一个功能强大的 Python Web 框架,它可以帮助开发者快速构建复杂的 Web 应用程序。在开始编写代码之前,首先需要创建一个 Django 项目。Django 项目是一个包含多个应用程序的容器,每个应用程序负责处理特定的功能模块。本文将逐步指导你如何创建一个新的 Django 项目,并解释项目的基本结构。

安装 Django

在创建 Django 项目之前,你需要确保已经安装了 Django。如果你还没有安装 Django,可以使用以下命令进行安装:

bash
pip install django

安装完成后,你可以通过以下命令检查 Django 是否安装成功:

bash
django-admin --version

如果安装成功,你将看到当前安装的 Django 版本号。

创建 Django 项目

要创建一个新的 Django 项目,可以使用 django-admin 命令行工具。以下是创建项目的步骤:

  1. 打开终端或命令行界面。
  2. 导航到你希望创建项目的目录。
  3. 运行以下命令来创建一个新的 Django 项目:
bash
django-admin startproject myproject

在这个命令中,myproject 是你项目的名称。你可以根据需要将其替换为其他名称。

项目结构

创建项目后,你将看到一个名为 myproject 的目录。该目录包含以下文件和子目录:

myproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
  • manage.py:这是一个命令行工具,用于管理 Django 项目。你可以使用它来运行开发服务器、创建数据库迁移等。
  • myproject/:这是项目的根目录,包含项目的配置文件。
    • __init__.py:这是一个空文件,用于告诉 Python 这个目录是一个包。
    • settings.py:包含项目的所有配置,如数据库设置、静态文件路径、已安装的应用程序等。
    • urls.py:定义项目的 URL 路由。
    • asgi.pywsgi.py:用于部署项目的 ASGI 和 WSGI 配置。

运行开发服务器

创建项目后,你可以立即运行开发服务器来查看项目是否正常工作。在项目根目录下运行以下命令:

bash
python manage.py runserver

默认情况下,开发服务器将在 http://127.0.0.1:8000/ 上运行。打开浏览器并访问该地址,你将看到 Django 的欢迎页面。

提示

如果你希望开发服务器监听其他端口,可以使用以下命令:

bash
python manage.py runserver 8080

这将使开发服务器在 http://127.0.0.1:8080/ 上运行。

配置项目

settings.py 文件中,你可以配置项目的各种设置。以下是一些常见的配置项:

  • INSTALLED_APPS:列出项目中安装的所有应用程序。默认情况下,Django 会包含一些内置的应用程序,如 django.contrib.admindjango.contrib.auth
  • DATABASES:配置项目使用的数据库。默认情况下,Django 使用 SQLite 数据库。
  • STATIC_URLSTATICFILES_DIRS:配置静态文件的路径。

示例:添加自定义应用程序

假设你希望在项目中添加一个名为 blog 的应用程序,可以按照以下步骤操作:

  1. 在项目根目录下运行以下命令来创建应用程序:
bash
python manage.py startapp blog
  1. settings.py 文件的 INSTALLED_APPS 列表中添加 blog
python
INSTALLED_APPS = [
...
'blog',
]
  1. blog 应用程序中创建视图、模型和 URL 配置。

实际案例

假设你正在开发一个简单的博客网站。你可以创建一个 Django 项目,并在其中添加一个 blog 应用程序来处理博客文章的发布和管理。以下是一个简单的示例:

  1. 创建项目:
bash
django-admin startproject myblog
  1. 创建 blog 应用程序:
bash
cd myblog
python manage.py startapp blog
  1. settings.py 中添加 blogINSTALLED_APPS
python
INSTALLED_APPS = [
...
'blog',
]
  1. blog/models.py 中定义一个简单的 Post 模型:
python
from django.db import models

class Post(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
published_date = models.DateTimeField(auto_now_add=True)

def __str__(self):
return self.title
  1. 创建并应用数据库迁移:
bash
python manage.py makemigrations
python manage.py migrate
  1. blog/views.py 中创建一个简单的视图来显示所有博客文章:
python
from django.shortcuts import render
from .models import Post

def post_list(request):
posts = Post.objects.all()
return render(request, 'blog/post_list.html', {'posts': posts})
  1. blog/urls.py 中配置 URL 路由:
python
from django.urls import path
from . import views

urlpatterns = [
path('', views.post_list, name='post_list'),
]
  1. myblog/urls.py 中包含 blog 应用程序的 URL 配置:
python
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls')),
]
  1. 创建模板文件 blog/templates/blog/post_list.html
html
<h1>Blog Posts</h1>
<ul>
{% for post in posts %}
<li>{{ post.title }} - {{ post.published_date }}</li>
{% endfor %}
</ul>
  1. 运行开发服务器并访问 http://127.0.0.1:8000/blog/,你将看到博客文章的列表。

总结

通过本文,你已经学会了如何创建一个新的 Django 项目,并了解了项目的基本结构和配置。你还通过一个简单的博客网站案例,了解了如何在实际项目中应用这些知识。Django 提供了丰富的功能和灵活的配置选项,使得开发 Web 应用程序变得更加高效和便捷。

附加资源

练习

  1. 创建一个新的 Django 项目,并添加一个名为 portfolio 的应用程序。
  2. portfolio 应用程序中创建一个模型来存储项目信息(如项目名称、描述、图片等)。
  3. 创建一个视图来显示所有项目,并配置 URL 路由。
  4. 运行开发服务器并访问你的项目页面,确保一切正常工作。

通过完成这些练习,你将进一步巩固对 Django 项目创建和配置的理解。