导图社区 django 操作思路
这是一篇关于django 操作思路的思维导图,在开发Django项目时,明确操作步骤和流程至关重要。本文将介绍使用Django框架进行项目搭建和操作的基本思路。
编辑于2025-03-11 09:17:15django 操作思路
环境搭建
安装python
安装django
安装pymysql
windows创建虚拟环境
python -m venv myenv
myenv\Scripts\activate
主题
项目搭建
创建项目 django-admin startproject myproject
__init__.py
settings
设置包含App INSTALLED_APPS
子主题
设置数据库 DATABASES
设置模板文件夹目录 TEMPLATES
设置语言 LANGUAGE_CODE
设置时区 TIME_ZONE
设置静态文件目录 static STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ]
urls.py
设置项目路由 在urls.py文件中,需要url(xx,并include(项目中的urls.py)
路由表,将项目的urls.py include到路由当中,这样不同app就能用一个项目启动,将“”设置为映射路由字符
创建app pyton manage.py startapp myapp
安装应用
将app名称包含的setting文件中
设置路由
创建路由文件 urls.py.
导入 views.py
将views里面的函数与页面关联起来
Models模型 models.py
定义模型
导入模型from django.db import models
class 表明(models.Model): a = models.x{Datafield()等}
子主题
子主题
迁移
生成迁移文件 python manage.py makemigrations
执行迁移 python manage.py migrate
关系字段类型
View视图 views.py
创建页面同名的函数
从创建的APP中,创建路由urls文件,导入views函数并配置路由表
Template 模板
创建templates文件,并在setting的DIR中,设置templates的位置。
子主题
四种类型:变量{{ }},标签{% 代码段%},过滤: 变量|过滤器:参数 ,注释{# #}
模板继承
父模板
{% block 名称 %} {% endblock 名称%}
子模版
{% extends "父模板路径"%}
静态文件
static
创建静态文件文件夹
javascript
css
创建管理app
django admin
创建管理员的用户名和密码
python manage.py createsuperuser
在应用的admin.py中注册模型类
from django.contrib import admin
from booktest.models import *
admin.site.register(AreaInfo)
控制管理页展示 class AreaAdmin(admin.ModelAdmin): list_per_page = 10 actions_on_top=True list_display=[模型字段1,模型字段2,...] admin_order_field=模型类字段 list_filter=['atitle'] 筛选器 atitle=models.CharField('标题',max_length=30)#名称 替换中文标题
启动服务
python manage.py runserver xxx.xxx.xxx.xxx:8080
网页基本格式
HTML基本结构
analysis.html
{% extends "template/base.html" %}
{% block body %}
<div id="pusher" class="pusher" style="padding-top:50px">
<div class="ui celled grid">
<div class="three wide column">
{%include 'template/filter.html' %}
</div>
<div class="thirteen wide column">
{% block display %}{% endblock display %}
</div>
</div>
</div>
{% endblock body %}
filter.html
header.html
footer.html
display.html
{% extends "chpa_data/analysis.html" %}
{% block display %}
<div class="">
</div>
{% endblock %}
index.html
{% extends "template/base.html" %}
<div class="ui hidden divider"> </div> #隐藏分割线
{% block title %} 数据分析 {% endblock title %}
{% block index %} {% endblock index %}
base.html
{% load static %}
<!DOCKTYPE html>
<html lang = "zh-cn">
子主题
<title> helloworld</title>
<head> </head>
采用字体的编码
<meta charset="utf-8>
设置主题
<title>{% block title %}{% endblock title%}</title>
引用datatableCSS文件
<link rel="stylesheet" href="{% static 'datatables/dataTables.semanticui.min.css' %}">
引用UIcss文件
<link rel="stylesheet" href="{% static 'Semantic-UI-CSS-master/semantic.min.css' %}">
加载jquery
<script src="{% static 'jquery/jquery-3.4.1.js' %}"></script>
加载datatablesjQuery
<script src="{% static 'datatables/jquery.dataTables.min.js' %}"></script>
加载datatables semanticUI
<script src="{% static 'datatables/dataTables.semanticui.min.js' %}"></script>
加载pecentagebars
<script src="{% static 'datatables/percentageBars.js' %}"></script>
加载semanticUI,js
<script type="text/javascript" src="{% static 'Semantic-UI-CSS-master/semantic.js' %}"></script>
加载echarts js
<script src="{% static 'echarts/echarts.min.js' %}"></script>
加载echarts js
<script src="{% static 'echarts/china.js' %}"></script>
<body>
header {% include 'template/header.html' %}
body {% block body %}{% endblock body %}
footer {% include 'template/footer.html' %}
</body>
</html>