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

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

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

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

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

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

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

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

  • 思源笔记

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

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

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

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 同样期待笔记本公开/私密设置的发布服务功能。

  • 其他回帖
  • sy961010 1 赞同

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

  • openAI 1 评论

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

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

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

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

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

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

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

推荐标签 标签

  • sts
    2 引用 • 2 回帖 • 242 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    35 引用 • 468 回帖 • 764 关注
  • Ngui

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

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

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    291 引用 • 4495 回帖 • 663 关注
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 564 关注
  • frp

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

    17 引用 • 7 回帖 • 2 关注
  • Oracle

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

    107 引用 • 127 回帖 • 344 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    98 引用 • 367 回帖
  • AngularJS

    AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。

    12 引用 • 50 回帖 • 522 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    268 引用 • 666 回帖 • 1 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    188 引用 • 1057 回帖 • 2 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 177 关注
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 636 关注
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    92 引用 • 752 回帖 • 3 关注
  • OnlyOffice
    4 引用 • 18 关注
  • 一些有用的避坑指南。

    69 引用 • 93 回帖 • 1 关注
  • Follow
    4 引用 • 12 回帖 • 4 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 184 关注
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    10 引用 • 54 回帖 • 181 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖 • 1 关注
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 264 关注
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    2 引用 • 14 回帖 • 2 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 1 关注
  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 610 关注
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    85 引用 • 324 回帖
  • 分享

    有什么新发现就分享给大家吧!

    248 引用 • 1794 回帖
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 2 关注