关于发布服务以笔记本为单位进行权限控制的前端设计探讨

本贴最后更新于 236 天前,其中的信息可能已经沧海桑田

首先感谢 Zuoqiu-Yingyi 大佬以及 D 大 V 大的贡献,实现了我一年半前的设想( 建议增加只读端口 )。

自发布服务 6 月份上线以来,关于对不同内容进行权限控制的呼声很高,但目前该功能还未进入开发计划。

既然可以针对不同的端口分别设置只读和可编辑权限,那么分别设置公开和私密权限理论上也是可行的。相关的难点之一,可能就是前端如何设计,我这里有一点思路,先看图:

可编辑状态 6806 端口的目录 只读发布服务 6808 端口的目录
image.png image.png
  • 首先,公开权限的设置是以笔记本为单位的,没必要细化到单篇笔记,因为太精细的话一来不好开发,二来用户也不方便管理。
  • 然后,在前端页面,公开笔记本始终排在私密笔记本之上,仅用一条分隔线隔开。这样做的好处,一是用户看着很直观,哪些公开、哪些私密一目了然;二是这样设计,用户除了可以通过右键菜单来修改权限外,还可以直接通过鼠标拖动的方式来调节权限;三是和发布服务的页面保持一致,最上面显示的都是公开笔记本;四是在可编辑状态下,目录从上到下依次是公开笔记本、私密笔记本、已关闭笔记本,越靠上,开放程度越高,给用户一种层层递进的感觉,而且越是私密的内容,越不希望显示在最上面,这也是符合逻辑的。
  • 注意,公开笔记本和私密笔记本属于同一小窗口,共用同一竖向滚动条。对于这一点,我简单地录了个视频,如下。

说完前端,再谈一点点后端。私密笔记本在发布服务的 6808 端口下,除了在目录中屏蔽外,还应该在搜索中屏蔽。至于公开笔记本中可能存在与私密笔记本有关的链接、嵌入块等内容,可以简单粗暴地处理为不予跳转和预览。

Q:为什么不用多个工作空间?
A:维护多个工作空间会分散用户的精力,明明可以用一个工作空间就能搞定的事,为什么要用多个工作空间呢?另外是对于手机用户,APP 不能多开,切换工作空间这一操作简直就是灾难。

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    26512 引用 • 110272 回帖 • 1 关注
3 操作
openAI 在 2024-12-01 17:08:35 更新了该帖
openAI 在 2024-12-01 11:39:27 更新了该帖
openAI 在 2024-11-30 10:15:19 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • wilsons 1 赞同

    这样反而实现起来麻烦,不如新建笔记时指定公开或私密,或者默认私密,可在笔记属性里修改为公开。

    然后公开的可以加个公开的标识符。

    排序的话,可增加是否按公开/私密排序。

    1 回复
  • openAI 1 评论 via Android

    这样反而实现起来麻烦,不如新建笔记时指定公开或私密,或者默认私密,可在笔记属性里修改为公开。

    我正文里也说了,可以在笔记本的右键菜单中修改权限。并不是一定要实现鼠标拖动的方式来修改。

    然后公开的可以加个公开的标识符。

    有点担心这样会导致标识符滥用,权限控制要表示符,那以后有了新功能是不是也要标识符?标识符其实并不直观,比如用阴影效果代表公开,用户并不能很好地区分,还是要进入笔记本属性才能确认。就算用很直观的方式,在笔记本后面写上“公开”二字(如果是英文的话就是“public”,更长),但由于目录的宽度有限,如果笔记本名字长一点可能就显示不了。另外本来目前笔记本的 icon 就是用户可自定义的,强行征用 icon 用于表示权限可能会导致用户不满。

    排序的话,可增加是否按公开/私密排序。

    既然可以按公开/私密排序,那加一条分隔线也不是什么难事。

    有道理!不过,分割线,如果官方这样加估计会有人会反馈丑吧,标识符,其实一个小点即可,这里仅仅思路并非完全这样,有更优方案可以调整。我觉得应尽量简化方案官方被采纳的可能性才越大,如果能说服 D 大这样做的必要性可能性就更大了。
    wilsons
  • openAI via Android

    不过,分割线,如果官方这样加估计会有人会反馈丑吧

    不开启发布服务,不显示分隔线即可。或者更简单一点,用户不设置任何私密笔记本就没有分隔线。并不是每个用户都会用到发布服务。

    1 操作
    openAI 在 2024-11-30 14:36:25 更新了该回帖
  • 过两年再讨论吧 trollface

    1 回复
  • Wetoria 3 评论

    huaji 不如期待一下 enhance 的发布模式

    期待
    openAI
    @openAI 可能要明年了,今年剩下的一个月,大概率都是折腾白板。
    Wetoria
    期待
    kobi
  • visduo via macOS

    不如自建分享服务 https://docs-share.07tb.com/

  • 如果要实现用鼠标拖动的方式来更改公开权限,可以考虑后端这样设计:

    将分割线看做一个虚拟笔记本,序号大于分隔线的,视作私密笔记本。

  • openAI via Android

    过两年再讨论吧 trollface

    行,过两年连同这个问题( 希望发布服务添加导出开关 )我再提一次。

  • 还有一个不成熟的想法。就是在分享链接时,可能面对不同的群体,需要展示不同的内容。这时候,就需要用多个端口来控制内容的展示。可以这样,假设有 n 个笔记本,m 类读者群体,那就设 m 个端口,笔记本与端口之间是 n 对 m 的映射关系。也就是说某个笔记本可以指定 0 个、1 个或多个端口,相应地,某个端口也可以对应 1 个或多个笔记本。若给笔记本指定了至少 1 个端口,则将其视为公开笔记本,否则视为私密笔记本。

  • pentong via macOS

    同样期待笔记本公开/私密设置的发布服务功能。

  • sy961010 1 赞同

    啥时候支持可以设置哪些公开发布,毕竟有些不想公开啊 😄

请输入回帖内容 ...

推荐标签 标签

  • OneDrive
    2 引用
  • InfluxDB

    InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。

    2 引用 • 106 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3203 引用 • 8217 回帖 • 2 关注
  • OnlyOffice
    4 引用 • 19 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 369 关注
  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖 • 1 关注
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    4 引用 • 7 回帖
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    12 引用 • 59 回帖
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 563 关注
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 643 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 1 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    125 引用 • 74 回帖 • 3 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 407 关注
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    5 引用 • 34 回帖 • 1 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 398 关注
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    107 引用 • 127 回帖 • 341 关注
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 3 关注
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 645 关注
  • IPFS

    IPFS(InterPlanetary File System,星际文件系统)是永久的、去中心化保存和共享文件的方法,这是一种内容可寻址、版本化、点对点超媒体的分布式协议。请浏览 IPFS 入门笔记了解更多细节。

    20 引用 • 245 回帖 • 236 关注
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    6 引用 • 26 回帖 • 545 关注
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    199 引用 • 543 回帖 • 3 关注
  • Access
    1 引用 • 3 回帖 • 3 关注
  • 印象笔记
    3 引用 • 16 回帖 • 1 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    117 引用 • 99 回帖 • 200 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 384 回帖 • 4 关注
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖 • 1 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    17 引用 • 7 回帖 • 4 关注