python使用django的详细过程

使用 Django 框架创建一个 Web 应用程序的详细过程通常包括以下步骤:

安装 Django:

打开命令行或终端,运行以下命令安装 Django:

pip install django

创建 Django 项目:

在命令行中运行以下命令创建一个新的 Django 项目:

django-admin startproject myproject

这将创建一个名为 myproject 的目录,其中包含 Django 项目的初始文件。

进入项目目录并创建应用:

进入项目目录并创建一个 Django 应用:

cd myproject

python manage.py startapp myapp

这将在 myproject 目录中创建一个名为 myapp 的应用。

配置数据库:

打开 myproject/settings.py 文件,配置数据库连接。默认使用 SQLite,你也可以选择其他数据库引擎。

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.sqlite3',

'NAME': BASE_DIR / "db.sqlite3",

}

}

定义模型:

在 myapp/models.py 中定义数据模型。这将是你的应用程序的数据结构。

from django.db import models

class MyModel(models.Model):

name = models.CharField(max_length=100)

description = models.TextField()

def str(self):

return self.name

创建数据库表:

运行以下命令以创建数据库表:

python manage.py makemigrations

python manage.py migrate

创建管理员账户:

运行以下命令创建管理员账户:

python manage.py createsuperuser

按照提示输入用户名、邮箱和密码。

注册模型:

打开 myapp/admin.py 文件,将模型注册到管理员界面。

from django.contrib import admin

from .models import MyModel

admin.site.register(MyModel)

创建视图:

在 myapp/views.py 中创建视图函数。

from django.shortcuts import render

from .models import MyModel

def my_view(request):

my_data = MyModel.objects.all()

return render(request, 'myapp/my_template.html', {'my_data': my_data})

创建模板:

在 myapp/templates/myapp 目录中创建一个 HTML 模板(例如,my_template.html)来显示你的数据。

配置 URL 路由:

在 myapp/urls.py 中配置 URL 路由。

from django.urls import path

from . import views

urlpatterns = [

path('myview/', views.my_view, name='my-view'),

]

配置主 URL 路由:

打开 myproject/urls.py 文件,将应用的 URL 包含到主项目中。

from django.contrib import admin

from django.urls import include, path

urlpatterns = [

path('admin/', admin.site.urls),

path('myapp/', include('myapp.urls')),

]

运行开发服务器:

在命令行中运行以下命令启动 Django 开发服务器:

python manage.py runserver

访问 http://localhost:8000/admin/ 使用创建的管理员账户登录并管理数据。

访问应用视图:

访问 http://localhost:8000/myapp/myview/ 查看创建的视图。

这是一个简单的 Django Web 应用的创建过程。你可以根据需要扩展和定制这个基础结构,使用 Django 提供的功能创建更复杂的应用。

相关推荐
mm-q291522272918 小时前
Python+Requests零基础系统掌握接口自动化测试
开发语言·python
毕设十刻18 小时前
基于Vue的学分预警系统98k51(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
liliangcsdn19 小时前
如何利用约束提示优化LLM在问题转sql的一致性
数据库·sql
电院工程师19 小时前
SIMON64/128算法Verilog流水线实现(附Python实现)
python·嵌入式硬件·算法·密码学
Java爱好狂.19 小时前
分布式ID|从源码角度深度解析美团Leaf双Buffer优化方案
java·数据库·分布式·分布式id·es·java面试·java程序员
Elastic 中国社区官方博客19 小时前
通过混合搜索重排序提升多语言嵌入模型的相关性
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
倔强的石头10620 小时前
KingbaseES:从兼容到超越,详解超越MySQL的权限隔离与安全增强
数据库·mysql·安全·金仓数据库
Python图像识别20 小时前
75_基于深度学习的咖啡叶片病害检测系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)
python·深度学习·yolo
闲人编程20 小时前
Python游戏开发入门:Pygame实战
开发语言·python·游戏·pygame·毕设·codecapsule
小鸡毛程序员20 小时前
我在CSDN学MYSQL之----数据库基本概念和基本知识(下)
数据库·mysql