📌

Mongeostore Project1:初始化项目

0. 项目目录

  1. 将项目下载下来,解压
说明📢📢📢:我将前端文件放在了后端文件里,下载下来的直接是Django项目,为创建虚拟环境方便,我将整个项目放在一个新建的文件夹mongeostore
notion image
  1. 使用VSCode打开
    notion image

    1. 数据库

    1.1 创建项目对应的库和表

    地震数据管理子系统 钻孔数据管理子系统 用户数据管理子系统 地质数据管理子系统 水文数据管理子系统 测井数据管理子系统 地理数据管理子系统 遥感数据管理子系统

    1.2 创建对应的数据库和集合

    地理数据管理 地震勘探数据管理 水文数据管理 测井数据管理 遥感影像数据 测斜表 钻孔信息 定位表 岩性表
    notion image

    2. 前端项目

    • 切换到mongeostore_ui目录下

    2.1 安装依赖

    • 下载node_modules
    npm install

    2.2 启动

    npm run serve

    3. 后端项目

    3.1 虚拟环境下载

    pip install virtualenv

    3.2 进入虚拟环境文件夹

    • 虚拟环境创建的Django项目Mongeostore-master为例
    • 这里是Windows下测试的,在\mongeostore 目录下生成虚拟环境配置,主要生成Lib目录和Scripts目录
    # 运行,生成虚拟环境的配置文件 virtualenv Mongeostore-master
    notion image
    notion image

    3.3 运行虚拟环境

    # 切换到Mongeostore-master cd .\Mongeostore-master\ # 进入虚拟环境,Linux下是source bin/activate .\Scripts\activate

    3.2 第三方库

    在虚拟环境下安装对应的第三方库
    • 在Windows下后端Django的项目虚拟环境中使用如下命令没有成功安装🤔🤔🤔
    pip install -r .\requirements.txt
    报了一个错误,这个可以先不用管,目前不影响
    notion image
    • 修改pyzmq版本再安装
    • 后续:📢📢📢📢为了更方便部署,我这里将lib文件夹上传到GitHub上了
    • 后来我发现原来是我导出的requirements.txt 文件不对

    后续

    • requirements.txt 这是最新的,这样安装可以跑起来
    appdirs==1.4.4 asgiref==3.2.10 autopep8==1.5.4 Django==3.0.5 django-cors-headers==3.5.0 django-ranged-response==0.2.0 django-rest-framework-mongoengine==3.4.1 django-simple-captcha==0.5.17 djangorestframework==3.11.1 djangorestframework-jwt==1.11.0 djongo==1.3.3 dwebsocket==0.5.12 mongoengine==0.24.1 numpy==1.22.3 Pillow==9.1.0 pycodestyle==2.6.0 PyJWT==1.7.1 pymongo==3.11.0 pytz==2020.1 qcloudsms-py==0.1.4 segyio==1.9.9 six==1.16.0 sqlparse==0.2.4 toml==0.10.1 xlrd==2.0.1
    • 在Windows下虚拟环境中使用如下命令成功安装
    pip install -r .\requirements.txt

    3.3 运行

    python .\manage.py runserver
    这部分已经解决
    报错,原因是第三方库没有安装好,就是 上面的pip install -r .\requirements.txt 没有成功执行,在Linux下可以成功执行
    notion image
    安装
    pip install django-rest-framework-mongoengine
    本项目还有其他的库,随便一起安装了
    pip install Django==3.0.5 pip install djangorestframework pip install django-rest-framework-mongoengine pip install djangorestframework-jwt pip install django-simple-captcha pip install djongo pip install mongoengine pip install xlrd pip install numpy pip install dwebsocket pip install segyio pip install qcloudsms_py
     
    安装好就可以成功运行了。
    pip list
    notion image

    local_settings.py

    • settings.py 同级目录下创建local_settings.py
    from pymongo import MongoClient # mongo shard port mongos_host = "192.168.92.145" mongos_port = 20000 local_port = '192.168.92.145:27017' mongos = '192.168.92.145:20000' MongoDB_client = MongoClient("192.168.92.145", 20000) MongoDB_cluster_client = MongoClient("192.168.92.145", 20000) DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': BASE_DIR / 'db.sqlite3', # 使用djongo设置mongodb 'ENGINE': 'djongo', 'NAME': 'django_example', 'CLIENT': { 'host': local_port, } }, 'others': { 'ENGINE': 'djongo', 'NAME': 'Django的一些参数', 'CLIENT': { 'host': mongos, } }, 'drill': { 'ENGINE': 'djongo', 'NAME': '钻孔数据管理子系统', 'CLIENT': { 'host': mongos, } }, 'geological': { 'ENGINE': 'djongo', 'NAME': '地质数据管理子系统', 'CLIENT': { 'host': mongos, } }, 'seismic': { 'ENGINE': 'djongo', 'NAME': '地震数据管理子系统', 'CLIENT': { 'host': mongos, } }, } LANGUAGE_CODE = 'zh-hans' ####### sms ###### # 腾讯云短信应用的app_id TENCENT_SMS_APP_ID = 1400370984 # 腾讯云短信应用的app_key TENCENT_SMS_APP_KEY = '65b6ec10baae1fd3b142345c59a18209' # 腾讯云短信签名内容 TENCENT_SMS_SIGN = 'iDataSharing'

    合并表

    python manage.py migrate
     

    启动

    后端启动

    PS D:\桌面\mongeostore> cd .\Mongeostore-master\ PS D:\桌面\mongeostore\Mongeostore-master> .\Scripts\activate (Mongeostore-master) PS D:\桌面\mongeostore\Mongeostore-master> python .\manage.py runserver

    前端启动

    PS D:\桌面\mongeostore> cd .\Mongeostore-master\mongeostore_ui\ PS D:\桌面\mongeostore\Mongeostore-master\mongeostore_ui> npm run serve