Skip to content

liuux-road/django_manage

Repository files navigation

// 启动
$ uwsgi --ini scripts/uwsgi.ini
$ daphne -b 0.0.0.0 -p 5015 django_manage.asgi:application
~/django_manage/scripts$ ./compress_game_js.sh
~/django_manage/match_system/src$ ./main.py

1. 新建 Django 项目

$ django-admin --version
$ django-admin startproject django_manage
$ tree .

2. 连接git

$ git init
$ touch readme.md
$ touch .gitignore
$ git add .
$ git commit -m "first commit"
$ git branch -M main
$ git remote add origin [email protected]:liuux-road/django_manage.git
$ git push -u origin main

3. 启动Django

$ python manage.py migrate
### '47.120.42.98' 参数添加到 ALLOWED_HOSTS 下
$ python3 manage.py runserver 0.0.0.0:8000
$ python3 manage.py startapp game
$ python3 manage.py createsuperuser

4. 实现路由定向

  • templates :管理 html 文件

  • urls :管理路由,即链接与函数的对应关系

  • views :管理 http 函数

  • models :管理数据库数据 url 输入网址 -> django_manage.urls -> page.urls -> page.views.index -> 展示页面

  • django_manage/settings中的INSTALLED_APPS加入'page.apps.PageConfig',

  • django_manage/settings中的TIME_ZONE = 'Asia/Shanghai'

  • 声明静态文件路径:

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
# django_manage.urls
from django.contrib import admin
from django.urls import path, include

urlpatterns = [ 
    path('', include('page.urls')),
    path('admin/', admin.site.urls),
] 
# page.urls
from django.urls import path
from page.views import index

urlpatterns = [ 
    path("", index, name="index"),
]
# page.views
from django.http import HttpResponse

def index(request):
    line1 = '<h1 style="text-align: center"> 第一个网页 </h1>'
    return HttpResponse(line1)

5. 创建第一个页面

templates 目录:管理 html 文件
urls 目录:管理路由,即链接与函数的对应关系
views 目录:管理 http 函数
models 目录:管理数据库数据
static 目录:管理静态文件,比如:
css : 对象的格式,比如位置、长宽、颜色、背景、字体大小等
js : 对象的逻辑,比如对象的创建与销毁、事件函数、移动、变色等
image : 图片
audio : 声音

consumers 目录:管理 websocket 函数

url 输入网址 -> django_manage.urls -> page.urls -> page.views.index -> main.html -> 展示页面

6. 配置nginx

将 nginx.conf 中的内容写入服务器 /etc/nginx/nginx.conf 文件中。如果 django 项目路径与配置文件中不同,注意修改路径。
将 acapp.key 中的内容写入服务器 /etc/nginx/cert/acapp.key 文件中。
将 acapp.pem 中的内容写入服务器 /etc/nginx/cert/acapp.pem 文件中。

$ sudo /etc/init.d/nginx start
# 修改url
perl -pi -e 's|app5427.acapp.acwing.com.cn|liuux.top|g' `find ./ -type f`

将域名添加到 ALLOWED_HOSTS 列表中
在 django 项目中添加uwsgi的配置文件 : scripts/uwsgi.ini

[uwsgi]
socket          = 127.0.0.1:8000
chdir           = /home/liuux/django_manage
wsgi-file       = django_manage/wsgi.py
master          = true
processes       = 2
threads         = 5
vacuum          = true

启动Django服务

$ uwsgi --ini scripts/uwsgi.ini

7. 多页面设计

显示笔记。嵌入md文件(其实是直接md -> html)

    path('notebook/', include('notebook.urls.index')),
    path('game/', include('game.urls.index')),
    path('admin/', admin.site.urls),

现在做了两个页面
一是自己的简陋的没有任何修饰的笔记
二是一个acwing学的游戏

目标架构:
├──个人主页
│ │
│ ├── 笔记
│ │ ├── 论文
│ │ ├── 算法
│ │ └── 程序
│ │
│ ├── 小游戏
│ │ └── 肉蛋冲击
│ │
│ ├── 地图相册
│ │
│ ├── 吃灰夹
│ │
│ │

8. 图床

typorn使用
picgo作为中介
SFTP协议传输,插件运行
传到media文件中

23.6.4
完成旅行地图(调用高德API)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published