当前位置: 首页 > 工具软件 > SimpleUI > 使用案例 >

Django SimpleUI 安装及部署

上官琦
2023-12-01

1 前言

Simple UI是一个基于Django Admin的现代化主题, 能够快速创建项目,支持风格切换,满足个性化需求;轻松操作页面管理,自定义按钮自由搭配,页面组合可视化操作更得心应手;开发调试一体化,集成运行环境零配置运行,开箱即用。了解更多 >

2 安装及运行

2.1 Python环境变量配置

安装python, 设置python及pip环境变量

配置pip镜像源

user目录下新建pip/pip.ini文件:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com 

2.2 安装Django

安装命令:

pip3 install Django -i https://pypi.tuna.tsinghua.edu.cn/simple

创建 Django 项目及应用

django-admin.py startproject projectname
django-admin.py startapp appname

在MYSQL使用创建一个新DB

create database runoob default charset=utf8;

项目settings文件配置数据库连接

DATABASES = {
     'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'django',    #你的数据库名称
            'USER': 'django',   #你的数据库用户名
            'PASSWORD': '123456', #你的数据库密码
            'HOST': '8.129.115.12', #你的数据库主机,留空默认为localhost
            'PORT': 3306, # 端口
     }
}

创建表结构及超级用户

python manage.py makemigrations  app01  # 让 Django 知道我们在我们的模型有一些变更
python manage.py migrate  #创建表结构
python manage.py createsuperuser  #来创建超级用户

启动服务

python manage.py runserver
python3 manage.py runserver 0.0.0.0:8000

2.3 安装simpleui及相关插件

安装simpleui

pip install django-simpleui

安装数据导入导出插件

pip install django-import-export

在自己项目的settings.py文件中INSTALLED_APPS的第一行加入'simpleui'和'import_export'

INSTALLED_APPS = [
    'import_export',
    'simpleui',
]

至此simpleui安装完成,可以启动服务,打开页面及可看到simpleui的新UI界面。

3 linux 部署

3.1 部署远程代码

本地使用freeze命令导出项目依赖关系

pip freeze > requirements.txt

修改settings.py文件ALLOWED_HOSTS为['*'],可以让任何IP访问

将本地代码COPY到远程服务器

然后使用命令在服务器上安装所需依赖组件

pip install -r requirements.txt

3.2 安装uwsgi及配置

安装uwsgi

pip isntall uwsgi

在项目目录里创建 uwsgi.ini 文件,添加配置选项

#添加配置选择
[uwsgi]
#配置和nginx连接的socket连接
socket=127.0.0.1:8997
#配置项目路径,项目的所在目录
chdir=/home/github/python-dev-django/simpleui_demo/
#配置wsgi接口模块文件路径,也就是wsgi.py这个文件所在的目录名
wsgi-file=simpleui_demo/wsgi.py
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log

首次启动时,让uwsgi.ini 文件生效:

uwsgi  --ini  uwsgi.ini

后续更新发布时,运行重新加载

uwsgi --reload uwsgi.pid

3.3 安装nginx及配置

nginx可以手动安装或者使用宝塔面板的软件商店安装.

安装好后配置 nginx.conf 文件:

server {
     listen 80;
     server_name  127.0.0.1; #改为自己的域名,没域名修改为127.0.0.1:80
     charset utf-8;
     location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8999;  #端口要和uwsgi里配置的一样
        uwsgi_param UWSGI_SCRIPT simpleui_demo.wsgi;  #wsgi.py所在的目录名+.wsgi
        uwsgi_param UWSGI_CHDIR /home/github/python-dev-django/simpleui_demo/; #项目路径
         }
 location /static/ {
 alias /data/wwwroot/mysite/static/; #静态资源路径
 }
}

如果是宝塔面板安装的,则在面板找到对应nginx配置:

 location / {
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:8999;  #端口要和uwsgi里配置的一样
    uwsgi_param UWSGI_SCRIPT simpleui_demo.wsgi;  #wsgi.py所在的目录名+.wsgi
    uwsgi_param UWSGI_CHDIR /home/github/python-dev-django/simpleui_demo; #项目路径
 }
   location /static/ {
   alias /home/github/python-dev-django/simpleui_demo/static/; #静态资源路径
 }

注意nginx.conf里的端口配置,要和uwsgi.ini里面的那个端口一致。

3.4 部署问题

1 无法启动时,查看nginx日志及uwsgi日志解决。

2 后台样式不显示的时,项目settings文件增加STATIC_ROOT

 STATIC_ROOT  = os.path.join(BASE_DIR, 'static')#指定样式收集目录

然后使用命令加载静态资源文件

python manage.py collectstatic
 类似资料: