study_django

1. Django项目的创建

首先,你需要安装Django并创建一个新的项目。通常使用以下命令:

django-admin startproject <项目名>

这将创建一个包含以下结构的目录:

<项目名>/
    manage.py
    <项目名>/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py
关键文件解释:
  • manage.py: 管理脚本,用于执行项目的命令,如启动开发服务器、迁移数据库等。
  • __init__.py: 表示该目录是一个Python包。
  • settings.py: 项目的配置文件,包含数据库配置、应用的注册、静态文件路径等。
  • urls.py: URL配置,定义URL路径及其对应的视图函数。
  • asgi.py/wsgi.py: 应用服务器接口,用于部署时的配置。WSGI是适用于大多数服务器的,ASGI用于处理异步请求。

2. Django中的应用(App)

Django项目可以包含多个“应用”(App),一个App相当于一个功能模块,多个App组合形成整个项目。

创建一个App的命令:

python manage.py startapp <应用名>

这将生成以下结构:

<应用名>/
    __init__.py
    admin.py
    apps.py
    models.py
    views.py
    tests.py
    migrations/
        __init__.py
App中的关键文件:
  • admin.py: 用于注册模型,以便通过Django Admin管理。
  • apps.py: 配置App的元数据,如App名称。
  • models.py: 定义数据模型,模型会映射到数据库的表。
  • views.py: 定义业务逻辑,通过它响应HTTP请求。
  • tests.py: 用于编写测试代码。
  • migrations/: 保存数据库迁移文件(根据模型的变化生成)。

3. 自动生成的文件和文件夹

  • migrations/: 这个文件夹在创建App时会自动生成,用于管理数据库迁移。迁移文件通过python manage.py makemigrationspython manage.py migrate自动生成。
  • __init__.py: 这个文件在创建包时会自动生成,表示该目录是Python包的一部分。

4. 增加功能和新应用

在已有项目上增加功能,通常是通过添加新的App来实现:

1) 创建新App
python manage.py startapp <新应用名>
2) 在项目中启用新App

settings.pyINSTALLED_APPS列表中添加新创建的App:

INSTALLED_APPS = [
    # 其它已注册的App
    '<新应用名>',
]
3) 为新App配置URL

创建新应用后,需要为它配置URL。通常有两种方式:

  • 局部URL配置:在App的urls.py文件中定义它的路由(需要手动创建urls.py文件)。
  • 全局URL配置:在项目的根urls.py中包含App的URL配置,如:
    from django.urls import path, include
    
    urlpatterns = [
        path('新应用路径/', include('<新应用名>.urls')),
    ]
    

5. 绑定和联系

Django项目是通过模型、视图、URL路由和模板紧密结合在一起的:

  • **模型(Model)**定义数据结构,数据库中的表。
  • **视图(View)**处理业务逻辑,获取模型中的数据,渲染模板或返回JSON等格式。
  • **模板(Template)**用于生成HTML页面,显示数据。
  • **URL路由(URLconf)**用于将特定的URL映射到视图函数。

通过上述机制,每个App的功能可以集成到项目中,使得各个模块既独立又能彼此配合。

6. 如何增加新功能

  1. 定义新的模型:在新App的models.py中创建新的数据模型。
  2. 添加视图逻辑:在views.py中编写视图函数或类视图处理业务逻辑。
  3. 配置URL:在App的urls.py中配置URL映射到视图函数,并在项目的全局urls.py中包含它。
  4. 编写模板:如果需要生成HTML,创建对应的模板文件(放在templates文件夹下),并在视图中使用它。
  5. 数据库迁移:如果修改了模型,需要运行以下命令生成并应用迁移:
    python manage.py makemigrations
    python manage.py migrate
    

通过这种结构化的方式,可以逐步扩展Django项目的功能,添加新的App和功能模块,同时与原有代码紧密结合。

希望这些内容能帮助你理解Django项目的基本架构,并顺利在企业级项目中增加功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值