星云小窝项目-项目结构三

2024/3/22 flask

上一篇博客介绍了如何在本地启动项目,本文章则主要介绍一下该项目的主要结构,方便查看。


# 前言

上一篇博客介绍了如何在本地启动项目,本文章则主要介绍一下该项目的主要结构,方便查看。


# 1. 目录结构

# 1.1. 大致结构

$ tree -L 2 -I ".git|.idea|__pycache__" -a --dirs-first


xingshixiaowo
├── common   //放置一些常用的代码
│   ├── Arial.ttf
│   ├── __init__.py
│   ├── database.py  
│   ├── redisdb.py
│   └── utility.py
├── controller  // 控制层,写后台接口的
│   ├── __init__.py
│   ├── admin.py
│   ├── article.py
│   ├── chatroom.py
│   ├── comment.py
│   ├── favorite.py
│   ├── home.py
│   ├── index.py
│   ├── py_echarts.py
│   ├── tools.py
│   ├── ucenter.py
│   ├── ueditor.py
│   ├── user.py
│   └── user_shezhi.py
├── model  // 模型层,连接数据库操作,返回数据信息供控制层调用
│   ├── __init__.py
│   ├── article.py
│   ├── chatroom.py
│   ├── comment.py
│   ├── favorite.py
│   ├── tb_follow.py
│   ├── tools.py
│   ├── user_shezhi.py
│   └── users.py
├── resource  //静态资源存放目录,主要放置css文件、js文件、以及图片等资源
│   ├── chat_room
│   ├── css
│   ├── download
│   ├── font-awesome
│   ├── fonts
│   ├── home
│   ├── icon
│   ├── images
│   ├── img
│   ├── js
│   ├── lib
│   ├── person
│   ├── qita
│   ├── thumb
│   ├── tools
│   ├── ueditor
│   └── upload
├── template  //视图层,也就是呈现给用户的html页面
│   ├── chatroom  //存放有关聊天室的页面目录
│   ├── gongjuku  //存放有关工具库的页面目录
│   ├── home  // 存放首页的页面目录
│   ├── shujumianbang  // 存放数据中心的页面目录
│   ├── xingyun-notebook  // 存放星云笔记的页面目录
│   ├── components.html   // 其余这些是引入echarts所需的文件(它的官网上是要求这么引入的)
│   ├── index.html  // 这是介绍页面的html文件
│   ├── macro
│   ├── nb_components.html
│   ├── nb_jupyter_globe.html
│   ├── nb_jupyter_lab.html
│   ├── nb_jupyter_lab_tab.html
│   ├── nb_jupyter_notebook.html
│   ├── nb_jupyter_notebook_tab.html
│   ├── nb_nteract.html
│   ├── simple_chart.html
│   ├── simple_globe.html
│   ├── simple_page.html
│   └── simple_tab.html
├── main-old.py  //这是开发时的运行主文件
├── main.py
├── requirements.txt  //所需安装的第三方库。
└── wsgi.py  // 生产环境时的启动文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77

# 1.2. 如何生成项目的结构树(补充)

在Git Bash中安装 tree-node-cli

npm install -g tree-node-cli
1
tree -L 2 -I ".git|.idea|__pycache__" -a --dirs-first

    -a, --all-files           打印所有文件,包括隐藏文件
    --dirs-first              目录在前,文件在后
    -d, --dirs-only           仅列出目录
    -I, --exclude [patterns]  排除与模式匹配的文件。用 | 隔开,用双引号包裹。 例如 “resource|.git”
    -L, --max-depth <n>       目录树的最大显示深度
    -r, --reverse             按反向字母顺序对输出进行排序
    -F, --trailing-slash      为目录添加'/'


1
2
3
4
5
6
7
8
9
10
11

# 2. MVC模式(补充)

MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范

  1. V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面。(也就是我的目录中的template目录)

  2. M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。也就是连接数据库的,返回数据库的信息(也就是我的目录中的model目录)

  3. C即controller控制器是指控制器接受用户的输入并调用模型和视图去完成用户的需求,就是指定url接口的,(也就是我的目录中的controller目录)


# 总结

主要介绍了这个项目的目录结构。以及补充了MVC模式的概念。

曾经沧海难为水,除却巫山不是云。

--2024-3-22

评 论:

冬眠
司南