阿里云资源按地域和可用区划分,一般情况下,我不只会用到很少地域和可用区.
所以需要管理我们用到的地域、可用区.
我这里只管理地域,当设置成启用状态
utils/aliyun/base.py
utils/aliyun/manager.py
utils/aliyun/__init__.py
asset/manager/models.py
asset/manager/controllers/region.py
asset/manager/apis/region.py
asset/manager/urls/region.py
data/sql/rurality.sql:
requirements.txt
utils/aliyun/base.py:
因为我们要跟阿里云玩,就要弄一个跟阿里云交互的基础类.
这个基础类提供初始化方法、请求方法、切换地域方法(所有接口都是基于地域的).
请求如果有异常,就直接记录错误日志,并且抛出统一异常.
utils/aliyun/manager.py: 在这里我们提供两个获取阿里云地域及可用区的方法.
所有涉及列表的接口,我们都采用total和data_list模式返回.
所有接口都是来自阿里官方提供的文档.
在这里可以直接查看python示例代码及返回的数据模拟.
我们需要安装阿里的sdk.
aliyun-python-sdk-core
这是最基础的sdk.
aliyun-python-sdk-ecs
这是控制ecs相关的sdk,地域和可用区的操作就在ecs的sdk中.
pip install aliyun-python-sdk-core
pip install aliyun-python-sdk-ecs
asset/manager/models.py:
定义RegionModel、ZoneModel,其中RegionModel中有status,默认是禁用,我们需要哪个地域就启用哪一个或多个.
asset/manager/controllers/region.py
asset/manager/apis/region.py
asset/manager/urls/region.py
这些文件都是按之前aliyun_key复制替换出来的.
data/sql/rurality.sql:
最新的sql数据,如果不想自己管理数据库,可以直接导入此文件.
requirements.txt:
最新的项目依赖.
src/api/asset/region/url.js
src/api/asset/region/index.js
src/views/asset/region/index.vue
src/router/modules/system.js
src/api/asset/region/url.js
src/api/asset/region/index.js
src/views/asset/region/index.vue
所有文件都是复制替换上一节aliyun_key的文件生成.
src/router/modules/system.js:
地域管理,我也放到了系统设置下,因为我觉得它就应该在这里.
上面我只有地域的显示页面,没有做可用区的,因为暂时用不着.
因为所有代码都是基于之前复制的,所以这个整个开发时间,不超过十分钟.