一个精简的 Django 画廊应用程序,具有合理的布局、无限滚动和拖放上传
项目描述
星际穿越画廊
Starcross Gallery 是一个精简的照片库 Django 应用程序。主要特点是:
合理的图像网格显示,用于 Flickr 等网站
无限滚动
轻松拖放上传
简单的对象模型 - 从文件中提取所有元数据,包括标题和 exif 数据
演示在https://starcross.dev/gallery
快速开始
使用 pip 安装 Starcross 画廊:
pip install django-starcross-gallery
像这样将“gallery”添加到您的 INSTALLED_APPS 设置中:
INSTALLED_APPS = [ ... 'gallery', ]
在你的项目 urls.py 中包含画廊 URLconf 和你的首选位置,例如“gallery/”:
path('gallery/', include('gallery.urls')),
确保设置了MEDIA 目录
运行python manage.py makemigrations gallery,然后运行 python manage.py migrate gallery来创建模型。
启动开发服务器并从管理站点http://127.0.0.1:8000/admin/创建相册。如果您只喜欢单个图像馈送,则无需创建相册
指示
Starcross 画廊将图像分组到相册中,这样您就可以组织您的演示文稿。通过 django 管理界面添加相册,并将多个图像拖到相册页面本身的空相册中。也可以仅将图库用作平面图像提要,这是在 <gallery base>/images 上发布的视图。所有图像将按日期降序显示在这里。您也可以在此处直接添加图像,但不会将它们添加到相册中。
图库的设计考虑了图像管理的简单性,因此标题来自文件名。您只需要添加相册,然后将您的收藏拖入适当的位置。这样做是为了避免在网站和磁盘上管理您的收藏。如果您想重新组织,您可以删除并轻松重新上传
相册中的图像按照片拍摄日期排序(如果在 exif 数据中可用),或者没有修改日期
专辑顺序可以在 Django 管理界面中指定。如果您想在管理界面中拖放排序,则提供对django-admin-sortable2的支持。只需安装模块即可。如果您已经添加了专辑,则需要使用重新排序命令。
设置
通过添加到您的 settings.py 来覆盖这些默认设置
GALLERY_LOGO_PATH – 默认:“gallery/images/starcross.png”
静态目录中标题徽标的路径。如果您不想使用徽标,请使用空白字符串覆盖
GALLERY_TITLE – 默认:“画廊”
在主页和图像提要的标题中显示的图库的标题
GALLERY_FOOTER_INFO - 默认值:“Starcross 画廊”
页脚中的信息文本
GALLERY_FOOTER_EMAIL - 默认值:“画廊@starcross。开发”
页脚中的联系电子邮件地址。用空白字符串覆盖以隐藏
GALLERY_THEME_COLOR – 默认“黑色”
使用预定义的主题配色方案。选项为黑色、白色或灰色
GALLERY_THUMBNAIL_SIZE – 默认值:200
以 px 为单位的目标缩略图高度。由于合理的布局,这在渲染中会略有不同
GALLERY_PREVIEW_SIZE – 默认值:1000
以 px 为单位的预览大小 - 宽度或高度,以最大者为准。渲染的图像大小将取决于浏览器窗口的大小,因此应将其设置得足够高,以免导致质量下降
GALLERY_RESIZE_QUALITY - 默认值:80
预览和缩略图图像的 JPEG 质量 (0-100)
GALLERY_HDPI_FACTOR – 默认值:2
实际预览和缩略图大小乘以此数字,但根据引用的值呈现。这使高 dpi 显示器(例如许多移动设备)能够显示更多细节并利用它们的额外分辨率。现在有些上升到 4 倍,因此推荐值为 1-4
GALLERY_IMAGE_MARGIN – 默认值:6
以 px 为单位的缩略图之间的边距。这可以创建或多或少的浓缩外观
故障排除
上传后图片链接失效
检查您的媒体设置。如果磁盘上的媒体位置发生变化,您需要将 CACHE 目录中的文件复制到新位置,或者删除并重新上传损坏的图像
上传过程中的错误
您的服务器可能对最大请求大小有限制(例如,nginx 的 client_max_body_size)。这需要大于您一次上传的所有图像的总和。此外,可能需要延长超时时间,因为在上传时会生成预览和缩略图缓存
将图像拖入上传框时有延迟
如果您在 Linux 上使用 Firefox,在上传框闪烁以确认待处理文件之前可能会有延迟,与文件数量成正比。如果不方便,您可以使用其他浏览器,例如 Chrome。
学分
Starcross 画廊由 Alex Luton <画廊@starcross创作。dev >,在 GNU LGPLv3 下发布
由 Google 授权的专辑图标 CC BY 3.0
来自名词项目的 Ilaria Bernareggi 的焦距图标
Freepik www.flaticon.com 制作的其他图片数据图标 CC 3.0 BY 授权
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。