《DjangoApp开发》第一集——配置环境及项目创建

发布时间 2023-10-02 22:18:24作者: wxzcch

2023年10月2日

前言

今天中午、下午都出去了。晚上回来看看。上午实现了本地局域网的Linux配置。里面的Django学习内容全来自,AcwingDjango工程课。

目录——实现内容

  • Ubuntu本地局域网配置ssh
  • 配置Docker
  • 配置Acwing的镜像、用户
  • 创建项目、预览项目
  • 设置vim无法写入中文解决

常用指令

tmux

ctrl + a 松开 + c 创建新窗口
ctrl + a 松开 + p 切换窗口
ctrl + a 松开 + % 左右分屏
ctrl + a 松开 + '' 上下分屏
ctrl + a 松开 + x 关闭这个分屏

django

//创建项目
django-admin startproject 项目名字  

//运行项目
python3 manage.py runserver 0.0.0.0:8000


//创建app
python3 manage.py startapp 名字

//同步数据库
python3 manage.py migrate

//创建管理员
python3 manage.py createsuperuser

启动、停止docker

//启动
sudo service docker start

// 停止
sudo service docker stop

//重启
sudo service docker restart


//开启镜像
sudo docker start 镜像名

//进入镜像试试
ssh acs@localhost -p 20000

实现内容

一、配置Ubuntu本地局域网ssh

我是跟着这篇博客实现的【--->点此进入博客<---】
首先需要本地安装了Ubuntu系统,我使用的是22.04
1、其实这一步很简单,只需要装两个包就行。

sudo apt update
sudo apt install openssh-server

2、可以根据以下指令看看成功没。

sudo systemctl status ssh


基本这样就ok了。
3、Ubuntu有自带的防火墙,可以手动打开

sudo ufw allow ssh

4、查下自己的本地ip

ip a

查到后ssh 连结即可。

二、配置系统的Docker

【---->就跟着这个一步一步来<----】

三、配置Acwing的镜像

因为我还没有自己做镜像,这个学期末自己做好镜像来卖!!这里使用Acwing,镜像。这个文件是scp下来的..
1.拉取环境

sudo docker load -i django_lesson_1_0.tar

2.映射

sudo docker run -p 20000:22 -p 8000:8000 -p 端口号:映射端口号 --name jason -itd django_lesson:1.0

进入docker容器中

sudo docker attach jason

3.还是创建一个非根目录用户

adduser acs  # 创建用户acs
usermod -aG sudo jason  # 给用户acs分配sudo权限

4.然后重进一下
一定是先ctrl + p(挂起) 然后是ctrl + q.
一定是挂起,而不是关闭
5.在服务器中开通

20000 8000端口
  • 然后我们可以在服务器上测试一下
ssh acs@localhost -p 20000

可以登录就好
3.png

四、创建Django项目

  • 创建项目
django-admin startproject 项目名字

1.创建django项目

django-admin startproject 项目名字

我们来测试泡一泡项目(一定要在tmux中跑)

命令

python3 manage.py runserver 0.0.0.0:8000

一个友好的提示
4.png
我们要在settings里面改一下

cd acapp

在里面有一个那个host,把自己的ip加进去就好了

创建app

命令

python3 manage.py startapp 名字(这里用了game)

同步数据库

python3 manage.py migrate

创建管理员

python3 manage.py createsuperuser

然后我们有最关键的三个东西

5.png

  • models存各种class

存储各种数据结构

  • views都是各种函数

用来写函数内容,等着被用户访问

  • urls就是路由

接受到这个地址,通过格式来调用函数

  • templates 用来存储html

我们现在来实现一个简单的views

我们是这么一个结构
6.png
然后就可以通过ip/game/来访问了。图片是以前的,但实现方式不变

五、设置vim无法写入中文解决

【---->跟着这个做,就是有点久hhh<----】