【服务端】使用conda虚拟环境部署Django项目

写在开头
为了与客户端的Deep search配合,需要整一个后台管理来保存和管理deep search的数据资料。选择前端框架Vue-Vben-Admin + Django后台服务来实现这个项目。

废话结束,从零开始。。。。

一、环境搭建

1. 安装 Anaconda

  • 下载 Anaconda:访问 Anaconda 官方网站,选择适合 Ubuntu 系统的版本进行下载。
  • 安装 Anaconda:在终端中运行以下命令进行安装:
    bash Anaconda3-2023.07-1-Linux-x86_64.sh
    
    按照安装向导进行操作,安装过程中建议将 Anaconda 添加到系统环境变量中。

2. 创建虚拟环境

  • 打开终端:在 Ubuntu 上打开终端。
  • 创建虚拟环境
    conda create -n mydjango python=3.8
    
    这里的 mydjango 是虚拟环境的名称,python=3.8 指定 Python 版本为 3.8。
  • 激活虚拟环境
    conda activate mydjango
    

3. 安装 Django

  • 在虚拟环境中安装 Django
    pip install django
    
  • 验证 Django 是否安装成功
    django-admin --version
    
    如果显示 Django 的版本号,说明安装成功。
    在这里插入图片描述

二、项目创建与配置

1. 创建 Django 项目

  • 创建项目
    django-admin startproject myproject
    
    这里的 myproject 是项目的名称。
  • 进入项目目录
    cd myproject
    

2. 创建应用

  • 创建应用
    python manage.py startapp myapp
    
    这里的 myapp 是应用的名称。

3. 配置应用

  • myproject/settings.py 中配置应用
    找到 INSTALLED_APPS 列表,添加你的应用名称。例如:
    INSTALLED_APPS = [...'myapp.apps.MyappConfig',
    ]
    

4. 配置数据库

  • myproject/settings.py 中配置数据库
    默认情况下,Django 使用 SQLite 数据库。如果你需要使用其他数据库(如 PostgreSQL、MySQL 等),需要修改 DATABASES 配置。例如,配置 PostgreSQL 数据库:
    DATABASES = {'default': {'ENGINE': 'django.db.backends.postgresql','NAME': 'mydatabase','USER': 'mydatabaseuser','PASSWORD': 'mypassword','HOST': 'localhost','PORT': '5432',}
    }
    
    然后安装相应的数据库驱动:
    pip install psycopg2-binary
    
    如果使用 MySQL 数据库,配置如下:
    DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'mydatabase','USER': 'mydatabaseuser','PASSWORD': 'mypassword','HOST': 'localhost','PORT': '3306',}
    }
    
    安装 MySQL 驱动:
    pip install mysqlclient
    

三、模型设计

  • myapp/models.py 中定义数据模型
    例如:
    from django.db import modelsclass MyModel(models.Model):name = models.CharField(max_length=100)description = models.TextField()created_at = models.DateTimeField(auto_now_add=True)def __str__(self):return self.name
    
  • 运行迁移命令使模型生效
    python manage.py makemigrations
    python manage.py migrate
    

四、视图编写

  • myapp/views.py 中编写视图逻辑
    例如:
    from django.shortcuts import render
    from .models import MyModeldef my_view(request):items = MyModel.objects.all()return render(request, 'myapp/template.html', {'items': items})
    

五、URL 路由配置

  • myapp 目录下创建 urls.py 文件
    from django.urls import path
    from . import viewsurlpatterns = [path('myroute/', views.my_view, name='my_view'),
    ]
    
  • myproject/urls.py 中包含应用的 URL 路由
    from django.contrib import admin
    from django.urls import include, pathurlpatterns = [path('admin/', admin.site.urls),path('myapp/', include('myapp.urls')),
    ]
    

六、模板创建

  • myapp 目录下创建 templates/myapp 文件夹,并在其中创建 template.html 文件
    <!DOCTYPE html>
    <html>
    <head><title>My Page</title>
    </head>
    <body><h1>Items</h1><ul>{% for item in items %}<li>{{ item.name }} - {{ item.description }}</li>{% endfor %}</ul>
    </body>
    </html>
    
  • myproject/settings.py 中配置模板路径
    TEMPLATES = [{...'DIRS': [BASE_DIR / 'templates'],...},
    ]
    

七、运行开发服务器

  • 启动开发服务器
    python manage.py runserver
    
  • 在浏览器中访问项目
    打开浏览器,访问 http://127.0.0.1:8000/myapp/myroute/ 查看结果。

八、测试项目

  • 创建一个测试数据
    在终端中运行以下命令进入 Django shell:
    python manage.py shell
    
    然后执行以下 Python 代码创建一个测试数据:
    from myapp.models import MyModel
    MyModel.objects.create(name='Test Item', description='This is a test item.')
    
  • 刷新浏览器
    再次访问 http://127.0.0.1:8000/myapp/myroute/,你应该能看到刚刚创建的测试数据。

以上是使用 conda 在 Ubuntu 上部署 Django 项目,其他内容,比如添加表单、用户谁、API接口等可以根据实际需求进一步扩展功能。结束,感谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/75137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python爬虫-爬取大麦网演出详情页面数据

前言 本文是该专栏的第50篇,后面会持续分享python爬虫干货知识,记得关注。 本文,笔者以大麦网平台为例。基于Python,实现获取演出详情页面的演出信息。 废话不多说,具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。接下来,跟着笔者直接往下看正文详细内…

多onnx模型导出合并调研(文本检测+方向分类+文本识别)

👑主页:吾名招财 👓简介:工科学硕,研究方向机器视觉,爱好较广泛… ​💫签名:面朝大海,春暖花开! 多onnx模型合并导出调研(文本检测+方向分类+文本识别) 引言1,尝试合并两个模型(文本方向分类+文本识别模型)(并行合并)(1)文本方向分类(2)文本识别模型(…

Flink介绍——实时计算核心论文之S4论文详解

引入 在上一篇我们对Flink的发展历史有了全局的了解&#xff0c;下面我们会通读几篇分布式实时处理相关的重要论文&#xff0c;从S4到Storm&#xff0c;再从MillWheel到Dataflow&#xff0c;最后到Flink。 通过深入梳理分布式实时处理技术的发展脉络&#xff0c;了解这些年技…

【商城实战(97)】ELK日志管理系统的全面应用

【商城实战】专栏重磅来袭!这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建,运用 uniapp、Element Plus、SpringBoot 搭建商城框架,到用户、商品、订单等核心模块开发,再到性能优化、安全加固、多端适配,乃至运营推广策略,102 章内容层层递进。无论是想…

Linux系统-ls命令

一、ls命令的定义 Linux ls命令&#xff08;英文全拼&#xff1a;list directory contents&#xff09;用于显示指定工作目录下之内容&#xff08;列出目前工作目录所含的文件及子目录)。 二、ls命令的语法 ls [选项] [目录或文件名] ls [-alrtAFR] [name...] 三、参数[选项…

游戏被外挂攻破?金融数据遭篡改?AI反作弊系统实战方案(代码+详细步骤)

一、背景与需求分析 随着游戏行业与金融领域的数字化进程加速,作弊行为(如游戏外挂、金融数据篡改)日益复杂化。传统基于规则的防御手段已难以应对新型攻击,而AI技术通过动态行为分析、异常检测等能力,为安全领域提供了革命性解决方案。本文以游戏反作弊系统和金融数据安…

Node.js 路由 - 初识 Express 中的路由

目录 Node.js 路由 - 初识 Express 中的路由 1. 什么是路由&#xff1f; 2. 安装 Express 3. 创建 server.js 4. 运行服务器 5. 测试路由 5.1 访问主页 5.2 访问用户路由 5.3 发送 POST 请求 6. 结语 1. 什么是路由&#xff1f; 路由&#xff08;Routing&#xff09…

面经-项目

项目 项目(重点)问题1:描述在网页中题目点击提交后到题目结果出现的一系列后台反应【1】如何获取到用户提交的代码的?【2】_1. 题目细节都有哪些?【2】_2. 题目信息怎么存储的?【3】负载均衡算法的实现?【4】oj_server怎么连接对应的compile_server(编译主机)的?【5】oj_…

网络基本概念认识(2)

目录 前言&#xff1a; 局域网协议 MAC/IP地址 Socket编程 TCP/UDP 网络字节序 前言&#xff1a; 本文同样作为博主的二刷网络课程的文章&#xff0c;主要涵盖的主题还是网络基本概念的认识&#xff0c;从上一篇文章遗漏的点加上引入的一些知识点共同组成当前的知识点。…

Kafka中的消息是如何存储的?

大家好&#xff0c;我是锋哥。今天分享关于【Kafka中的消息是如何存储的&#xff1f;】面试题。希望对大家有帮助&#xff1b; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在 Kafka 中&#xff0c;消息是通过 日志&#xff08;Log&#xff09; 的方式进行存储的。…

openEuler24.03 LTS下安装ZooKeeper集群

目录 前提条件 ZooKeeper集群规划 下载ZooKeeper 解压 配置环境变量 配置ZooKeeper 配置zoo.cfg 配置myid 分发到其他机器 修改其他机器myid 启动集群 关闭集群 集群启停脚本 前提条件 准备3台Linux机器&#xff0c;并安装好Java8 ZooKeeper集群规划 node2node3…

Python 实现机器学习小项目实战教程*

markdown 复制 Python 实现机器学习小项目实战教程 本教程将通过一个完整的机器学习项目案例&#xff0c;从数据预处理到模型部署&#xff0c;帮助初学者快速掌握机器学习核心流程。项目以经典的鸢尾花分类为例&#xff0c;使用 Scikit-learn 库实现。 1. 项目概述 目标 构…

rust学习笔记21-闭包

在 Rust 中&#xff0c;闭包&#xff08;Closures&#xff09; 是一种可以捕获其环境中的变量的匿名函数。它们非常灵活&#xff0c;既可以作为普通函数使用&#xff0c;也可以捕获和操作定义它们的作用域中的变量。闭包是 Rust 中处理短小逻辑代码块的强大工具&#xff0c;特别…

linux实现rsync+sersync实时数据备份

1.概述 rsync(Remote Sync) 是一个Unix/linux系统下的文件同步和传输工具 2.端口和运行模式 tcp/873 采用C/S模式&#xff08;客户端/服务器模式&#xff09; 3.特点 可以镜像保存整个目录和文件第一次全量备份(备份全部的文件),之后是增量备份(只备份变化的文件) 4. 数…

【第30节】MFC编程:ListCtrl控件和TreeCtrl控件

目录 引言 一、高级控件ListCtrl 二、高级控件TreeCtrl 三、Shell控件 四、CImageList 五、综合代码示例 引言 在MFC编程里&#xff0c;高级控件能大幅提升应用程序的交互性与功能性。接下来&#xff0c;咱们会详细讲讲ListCtrl和TreeCtrl这两个高级控件。不仅会介绍它们…

为什么 ThreadLocalMap 的 key 是弱引用 value是强引用

问题一&#xff1a;为什么 ThreadLocalMap 的 key 是弱引用&#xff1f; 【假设 Entry 的 key 是对 ThreadLocal 对象的强引用】&#xff1a;这个 Entry 又持有 ThreadLocal 对象和 value 对象的强引用。如果在其他地方都没有对这个 ThreadLocla 对象的引用了、然后在使用 Thr…

DeepSeek本地部署(linux)

一、下载并安装Ollama 1.下载Ollama Ollama官网:Ollama 点击"Download",会跳转至下载页面。 1.1在线下载安装 可复制此命令到Linux服务器进行在线下载,如下载速度过慢,可选择离线下载安装。 curl -fsSL https://ollama.com/install.sh | sh1.2离线下载安装 …

基于Halcon仿VM流程列表的执行效果

Halcon本身应用需要一定的门槛&#xff0c;但是也可以封装成类似VM简单易操作的样子 上期文章分享的是连线功能&#xff0c;本期分享数据传参 1&#xff0c;定义通用属性和方法 public class BaseModel {public HObject HInput { get; set; }//图像输入public HObject HOutpu…

打车APP订单系统逻辑梳理与实现

一、逻辑分析 打车 APP 订单系统是整个打车业务的核心&#xff0c;负责处理从乘客下单到行程结束的一系列流程&#xff0c;涉及乘客、司机和平台三方的交互。 乘客端 下单&#xff1a;乘客打开 APP&#xff0c;输入上车地点、目的地&#xff0c;选择车型等信息后提交订单。此时…

杂草YOLO系列数据集4000张

一份开源数据集——杂草YOLO数据集&#xff0c;该数据集适用于农业智能化、植物识别等计算机视觉应用场景。 数据集详情 ​训练集&#xff1a;3,664张高清标注图像​测试集&#xff1a;180张多样性场景样本​验证集&#xff1a;359张严格筛选数据 下载链接 杂草YOLO数据集分…