景观摄影观测站
项目描述
Terralego后端用于OPP模块
需求
- 为了在模板中处理图片,请安装weasyprint需求库 https://weasyprint.readthedocs.io/en/stable/install.html#linux
首先,为观测站创建一个数据层
./manage.py create_observatory_layer -n observatory
然后获取给定的主键,例如10。
需要设置的设置
TROPP_OBSERVATORY_LAYER_PK=10 # replace by primary key given by command
TROPP_OBSERVATORY_ID = 20 # set the nationnal id of your observatory
VERSATILEIMAGEFIELD_RENDITION_KEY_SETS = {
'terra_opp': [
('original', 'url'),
('full', 'thumbnail__1500x1125'),
('list', 'thumbnail__300x225'),
('thumbnail', 'thumbnail__180x120'),
('thumbnail_vertical', 'thumbnail__120x180'),
]
}
AUTH_USER_MODEL = 'terra_accounts.TerraUser'
媒体文件
如果你的项目不使用默认的django存储,则必须定义并设置一个URL检索器,以便告诉weasyprint在哪里找到您的媒体文件。
使用来自S3存储的媒体文件的URL检索器示例
from django.conf import settings
from terra_opp.renderers import django_url_fetcher
def custom_url_fetcher(url, *args, **kwargs):
scheme = 'https' if settings.AWS_S3_SECURE_URLS else 'http'
url_prefix = f"{scheme}://{settings.AWS_S3_CUSTOM_DOMAIN}"
if url.startswith(url_prefix):
url = url.replace(
url_prefix,
settings.AWS_S3_ENDPOINT_URL + settings.AWS_STORAGE_BUCKET_NAME
)
return django_url_fetcher(url, *args, **kwargs)
然后您必须在设置中引用此自定义URL检索器。例如,如果您的检索器定义在custom/fetcher.py
TROPP_URL_FETCHER = 'custom.fetcher.custom_url_fetcher'
启动开发实例
在test_opp
django项目中定义您想要的设置。
docker-compose up
然后初始化数据库
docker-compose exec web /code/venv/bin/python3 /code/src/manage.py migrate
并创建基本层
docker-compose exec web /code/venv/bin/python3 /code/src/manage.py create_observatory_layer -n observatory
现在您可以编辑您的代码。Django runserver在内部启动,因此这是一个自动重载服务器。
您可以在http://localhost:8000/api/访问API
测试
要运行测试套件,只需启动
docker-compose exec web /code/venv/bin/python3 /code/src/manage.py test
发布新版本
# on the master branch
# update the file CHANGES.md with your latest changes
git changelog
# Next update the version in the file terra-opp/VERSION.md
echo X.X.X > terra-opp/VERSION.md
# Next use git release to create the tag et push your branch & tag to origin
git releasse X.X.X
完成这些步骤后,您现在可以前往GitHub仓库,使用相应的标签创建一个新版本。
0.7.2 / 2021-04-30
- 删除城市时不会删除视角
- 现在正确大写城市的标签
0.7.1 / 2021-04-29
- 将视角的默认活动状态更改为false
0.7.0 / 2021-04-28
- 修复主题和城市视图的权限
- 向主题添加类别
- 添加主题和城市筛选
0.6.11 / 2021-04-27
- 修复相关文件上传问题
- 修复图片排序
0.6.10/ 2021-04-24
- 添加视图点排序的ID
- 添加活动添加筛选
- 添加图片搜索
- 添加排序功能
0.6.9 / 2021-04-22
- 覆盖创建模型混入以首字母大写城市标签 (#68)
0.6.8 / 2021-04-20
- 更新翻译
- 为图片和活动添加更改状态信号
0.6.7 / 2021-04-19
- 将城市添加到SimpleViewpoint序列化器
0.6.6 / 2021-04-19
- 增强视图点筛选
0.6.5 / 2021-04-15
- 为视图点PDF添加预览视图
- 暂时修复所有表单的权限
- CampaignZipViewpointPdf: API视图以检索给定活动的所有视图点PDF
0.6.4 / 2021-04-14
- 添加垂直缩略图
- 标准化城市名称的大小写 (#62)
- 更新翻译
- 将图片标识符从整数更改为字符串
0.6.3 / 2021-04-12
- 允许通过图片标识符筛选视图点
0.6.2 / 2021-04-10
- 使用常量状态
- 添加last_picture_date字段
- 添加图片数据
- 添加自动关闭功能
- 添加统计数据
- 添加活动到图片的链接
0.6.1 / 2021-04-07
- 为simpleviewpoint序列化器添加活动状态
0.6.0 / 2021-03-30
- 增强活动视图点
0.5.6 / 2021-03-30
- 更新readme文件中的发布流程 (#55)
- 添加更多一致性设置命名和文档
- 添加对TROPP_OBSERVATORY_ID的检查
0.5.5 / 2021-03-30
- 损坏的发布
0.5.4 / 2021-03-29
- 为仅活动的视图点添加活动状态和端点
0.5.3 / 2021-03-17
- 将owner_id添加到图片以修改它
- 为图片添加业务标识符
0.5.2 / 2021-03-11
- 在视图点上添加活动状态
0.5.1 / 2021-02-17
- 在迁移时添加权限生成
0.5.0 / 2021-02-17
- 添加翻译
- 添加权限和检查
- 更新安装流程
- 增强命令
!! 警告:破坏性更改 !!
- 您需要调整项目设置和需求
- 使用新的django-terra-settings代替django-terra-utils
- 一些terra-utils函数已直接集成
0.4.2 / 2020-09-09
- 从JSON属性中删除城市和主题,使其成为每个视图点实例的相关对象
- 改进相关文档序列化器,不再以base64返回文件,而仅返回访问URL
0.4.1 / 2020-08-26
- 删除信号,并在相关视图集中执行所有逻辑
- 添加创建自己的URL获取器的可能性
- 添加TROPP_URL_FETCHER设置和说明
- 修复factory boy版本
- 使用django.db.models.JSONField代替django.contrib.postgres.fields
0.4.0 / 2020-07-30
-
警告!破坏性更改
- 由于存储使用的统一性,您需要在模板中使用file://方案来访问图片
- 弃用通过名称定义观测站层
- 现在您需要定义层pk -> TROPP_OBSERVATORY_LAYER_PK。
- 现有前端应用程序应通过TROPP_OBSERVATORY_LAYER_PK=1进行修复
-
修复图片属性
-
修复预取数据作为列表而不是查询集
-
修复restframework未列在setup requirements中
-
修复存储使用,使其与weasyprint配合使用默认和自定义存储
-
添加处理JPG的正确依赖项
-
允许在创建时设置层名称
-
如果观测站层pk未定义,则不阻塞,以允许创建它
-
在未定义正确的层设置的情况下阻止启动
-
添加并改进配置检查
-
添加创建用于观测站的点层的命令
-
通过pk设置定义观测站层,并向前端提供信息,以避免期望硬编码的pk=1层用于瓦片
-
PK和相应的端点自动添加到/api/settings,以向前端发送动态配置
-
存储存储桶不再是必需的。
0.3.8 / 2020-06-23
- 修复默认设置
0.3.7 / 2020-06-19
- 支持django 3.0
- 为模板使用添加"as_versatile"过滤器
0.3.6 / 2019-12-19
- 与python 3.8、django 3.0和DRF 3.11兼容
- 添加flake8进行linting
0.3.5 / 2019-11-04
- 修复MEDIA_URL可能为空,破坏url获取器
0.3.4/ 2019-10-10
- 从图片中删除注释字段
0.3.3 / 2019-10-09
- 修复Manifest以包括md文件
0.3.0 / XXXX-XX-XX
第一个独立发布
- 从 terra-common 包中提取以使其成为一个独立包
项目详情
关闭
terra-opp-0.7.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e7d10bf52419d2558eb5882b314885d6f8581739ee202b6169b22e86341bc1e2 |
|
MD5 | ca56f2f2224799f307e6375575c74dbc |
|
BLAKE2b-256 | d44f5afabbd03bd4e5db7aa247bda65085e7b17fc103ad254259d7881080fd8d |