数据库(属性视图)公测反馈

本贴最后更新于 422 天前,其中的信息可能已经时移俗易

今天属性视图进行了付费用户公测,和预期功能有些偏差,部分功能也挺奇怪或有缺陷,特来反馈。

设计思路

目前用户在讨论笔记软件的数据库的时候其实涵盖了多种不同的东西:多维表格、notion 数据库、属性视图。

多维表格

大略可以当成加强版 Excel,单元格内可以填充的内容多种多样,所有的数据依托于表格存在。典型代表 airtable。

notion 数据库

在 airtable 的基础上有所发展,每一行都是一个内嵌于数据库的页面,可以打开页面记录数据库字段之外的内容。

image.png

image.png

notion 的数据库内嵌页面也是依托于数据库存在的,在文档树中无法找到它,并且删除数据库时里面的所有页面都会被删除。

属性视图

顾名思义,就是把块、页面的属性进行汇总显示的一种视图,可以有表格视图、日历视图、看板视图、列表视图等。属性视图与多维表格、notion 数据库的主要区别在于:属于依托于块或页面存在,把表格删了属性仍然存在。表格只是起到汇总、筛选、批量操作的作用。

本地笔记御三家目前都在做或计划做相关功能:

  • 思源笔记:attribute view(block attribute、page attribute)
  • logseq:property(block property、page property)
  • obsidian:file property(ob 没有块,所以只有 file property,没有 block property)

obsidian

下图是 obsidian 的 file property,可以直接在文档中添加 property,不需要有表格(目前 ob 本体还没有提供对 file property 进行汇总的功能,后续不知道会不会提供)

image.png

logseq

可以直接给页面和块设置属性,并且能够通过 query 进行汇总,目前汇总表只能查看,不支持修改。

image.png

image.png

思源笔记

在借鉴 notion 的路上渐渐丢失属性视图的本质。

属性视图表格和 notion 长得很像,功能比较完善(吐槽:日期类型不设置时间竟然不显示)

image.png

需要点击块标 → 属性 → 数据库 才能查看数据库表格给页面添加的属性。

image.png

存在的问题

新建文档问题

在数据库中新建文档,该文档会变成当前文档的子文档,并且在文档树中不可见。

在文档树中不可见这个显示效果与 notion 是一致的,但是由于实际上会在当前文档下生成子文档,因此会导致一些 notion 中没有的问题。例如我在文档 A 的数据库中新建了文档 B,文档 B 变成了文档 A 的子文档,后续整理笔记过程中我将数据库从文档 A 移到到了文档 C,并顺手删除了文档 A,此时文档 B 也会被删除,数据库中的文档 B 失效。

改进建议:把数据库新建的文档统一放到一个不可见笔记本或者文档中,或者干脆就在文档树中进行显示。

显示问题

  1. 文档属性需要到属性页面才能查看,比较麻烦,建议像 notion 一样直接在页面顶部显示。
  2. 在属性页面显示了数据库表格的名称,但是无法点击跳转到数据库表格。

引用范围问题

目前在数据库表中进行引用,引用范围同 [[ 引用,会受到下面这个选项的影响,就是这么设计的吗?我觉得是合理的,但最好进行一下说明。

image.png

到底是谁的属性?

既然叫属性视图,属性还是应该要算到块或者页面的头上,但是目前呈现出来的结果是这些属性应该算是数据库表格的属性,主要有两个原因:

  1. 不同数据库表格给同一个块添加的同名、同类型属性被当做两个属性。如果这个属性属于块,那么这个块应该只能有一个同名、同类型属性。
  2. 在块属性界面的数据库分页无法对属性进行修改、删除、添加。只能看、不能改,这怎么能算是块的属性呢?

汇总功能缺失

目前的操作步骤是:

  1. 在文档中添加一个数据库
  2. 在数据库中引用一个块或者新建一个文档
  3. 给数据库增加属性列,并为每一个块设置属性值

这个是和 notion 一样的、从上而下的逻辑,都是现有数据库、后有页面(块)属性,这应该算是多维表格的做法,而不是属性视图的做法。属性视图应该是自下而上的逻辑,先有块,再有块属性,最后才有对块属性进行汇总、筛选的属性视图。

以上是我的个人理解及期望,也有人是想要多维表格的功能,建议把多维表格和属性视图分成两个功能,而不是进行大杂烩,现在端出来的这道菜已经成功让群里不同需求用户都嫌弃了 😂

  • 思源笔记

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

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

    22336 引用 • 89376 回帖
1 操作
qiancang 在 2023-09-26 20:49:41 更新了该帖

相关帖子

欢迎来到这里!

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

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

    虽然但是,在块属性里是能对已有属性进行修改,只是不能增加、删除

  • 总结的挺好,目前的感觉是设计上是可以的,但是使用上还差了一点火候。

  • NaughtyCat

    支持。

    另外说一点,数据库删了,块属性还是保留,但是块的属性那边没用提供编辑操作,导致无法删除。应该算一个 bug @88250

    1 操作
    NaughtyCat 在 2023-09-26 21:57:40 更新了该回帖
  • 盛赞,希望 3.0 正式发布前能把设计思路捋顺

  • RiiichMan
    1. 支持数据库操作新增文档作为子文档可视化处理。
    2. 支持属性视图实现类似 dataview 的功能,确实太需要这个了。
    1 回复
  • 这个文章思路很清晰,把我要说的话都说了。

    简之就是一句话,目前做的,虽然名叫属性视图, 但实际上是 notion 表格。logseq query 那种,才叫属性视图。

    十分同意作者把两者分开的建议。

  • 想实现这个,页面自定义属性要先实现 4 个功能:

    1. 显示于页面顶端
    2. 属性名支持中文
    3. 支持不同的数据类型
    4. 有 query 或者 dataview 这样的命令或者插件

    十分期待!

  • 初步使用了一下,个人觉得思源在已有的内置属性和自定义属性之外单列一个数据库属性还是未来可期的很有创造性的做法。

    数据库属性本质上仍然是块属性,不过是由原先的 属性名-属性值的二级属性系统变成了数据库名-表列名(属性名)-值(属性值)的三级属性系统,变得更加灵活,上限更高了。一个最基本的好处就是数据库属性可以根据数据库自动汇总,另外数据库属性的名与值也不再受到英文与纯文格的制约,应该是一次很大的进化了。

    现在最大的问题是缺少块端的属性操作,如果后续版本中能够在块处新建、修改数据库属性,那使用体验肯定是要比基于传统二级属性的属性视图要强的。

  • "需要点击块标 → 属性 → 数据库 才能查看数据库表格给页面添加的属性。"

    我这咋就没有 数据库 那个标签页?😳

    1 回复
  • 需要先添加到属性视图,编辑属性后,才会见到。

    1 回复
  • 88250 1 1 赞同

    感谢反馈,我描述一下我们的设计思路:

    这个特性正式的名称是 数据库(Database),属性视图 用作内部开发,主要设计思路是借鉴 Notion Database,并结合思源块级属性进行一些创新,比如 模板列,通过模板列我们可以实现属性的计算渲染,举个例子,比如给块 A 自定义属性 Author,块 A 在被放到不同 Database 中后可以通过设置模板列 .Author 来渲染这个自定义属性,修改属性值以后不同的 Database 中的模板列都会刷新为新的值。

    对于 Query View 类需求我们期待社区进行扩展,因为查询汇总的需求非常多,需要不同的视图渲染以满足特定需求,所以由社区扩展更适合。

    另外对于帖子中提到的一些问题还在考虑:

    • 新建文档是否要隐藏,我个人也是偏向于不隐藏的
    • “在属性页面显示了数据库表格的名称,但是无法点击跳转到数据库表格”这个会加入跳转 Issue #9285 · siyuan-note/siyuan
    • 文档属性显示在顶部还需要考虑,近期暂时不会安排
    • 块属性数据库页签中可以进行修改,只是不能新增和删除,你看下是不是主题影响导致不能修改
    2 回复
  • Henmy 1 赞同 1 评论

    我觉得多维表格做的最好的是飞书,我现在对思源的属性视图有以下几个建议:

    1、不太理解为何第一个字段一定要选择一个文档或快,有很多的表格需要分析只是单纯的对数字进行加工,不需要第一个字段先选择出一个文档或快(后面的某个字段可关联文档是合理的)。希望可以取消掉第一个字段必须是文档的定义

    2、思源现在还不支持创建基于多维表格创建多视图做分析,这个也是多维表格很核心的功能,这块是完全缺少

    3、字段的格式控制还不够细致,例如日期,飞书是支持日期字段选择格式的,是年月日,还是年月日时分秒等多种格式。

    支持这三个建议!
    sweesalt
  • 谢谢!

    之前理解错了。找错地方了 😂

  • https://obsidian.md/roadmap/

    Obsidian 计划做属性汇总,名字叫 database,可以看上面的路线图

  • DayDreamerr 1 赞同

    我不太理解为什么一定要选择一个 block。。。

    1 回复
  • qiancang

    现有的数据库前端组件会提供 API 给 Query View 类插件不,还是得插件自己弄个组件来展示 query 结果?

    1 回复
  • 现在没有 API 的,等基础稳定以后再考虑。

  • 普通块属性不必要显示在编辑器上,但页面级的块属性,最好还是依照一般的习惯显示在页面顶部。至少给用户这个选项嘛,不想显示的,你勾选不显示就行了嘛。

    页面属性如果不显示在页面上的话,很难想起用这个功能,给页面赋了赋性,很多时候也很难想起来用它。

    一直不是很理解为什么 D 大总是抗拒显示页面属性,是技术难度?还是有其它考虑?

    1 回复
  • 请参考 Issue #9272 · siyuan-note/siyuan 中的讨论。

  • Woong

    特性付费用户怎么下载公测版本?

    1 回复
  • 公测版本就在正式的安装包中。但是必须是年费会员才可用。公测后应该会改为免费使用吧

    1 回复
  • Woong

    不是说特性付费用户也可以公测吗?

    2 回复
  • qiancang

    你有登陆帐号的话升级后应该就能使用了。

  • 我猜因为每一行的数据就是一个块的属性

    或许可以做到新增一行自动创建一个块

  • NaughtyCat

    特性就有了,就是你官网下载的安装包就是有的。

    公测的意思是,开放给付费的用户先用,正式版免费的用户也能用。所以你是付费用户的话,登录了账户就可以用了。

  • Zima

    看了半天,大概懂了一点,弱弱的问一下,这个是类似于 notion 那种视图的一种吗,就是画廊、白板、列表之类的那种

    1 回复
  • qiancang

    对的,目前只有表格视图,后面会有看板视图。

  • 不同意文档“在文档树中进行显示”。因为多维表又叫数据库,是有可能建大量文档的,如果在文档中显示,是占据整个电脑屏幕。

  • yulixing

    什么时候开放给免费用户使用啊?

    1 回复
  • qiancang

    不造啊,要 3.0 版本才会向所有用户开放,应该要年后了。

请输入回帖内容 ...