-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
对属性的优化建议 #13121
Comments
我觉得最合适的方法是支持在数据库字段里获取内置属性和自定义属性然后编辑,这种情况下字段名不等于属性名,属性名也不需要支持中文了。 |
这样可以提高灵活性,数据库由局部属性和全局属性共同构建,可以降低属性维护的困难度以及重复输入的频率。另外将书签、标签等内置属性视为全局属性时,甚至可以将书签、标签面板融合到一个专门的属性反查条目的面板中,提供筛选、搜索等操作。 |
我有一点不同的看法,tana的supertag只是叫supertag,虽然是通过 换句话说tana选择了打标签作为 可以参考下我这篇回答🙏🙏:#11371 (comment) 以上回答仅供参考,也不是说tana就这么简单哈。 |
这两个功能就不可能是一样的, 改成 SuperTags 虽然都是数据库的形式,但是 SuperTags 是为了让标签功能更强大,他不应该取代 |
我好像知道我俩的分歧在哪里了,Sa以为我提这个FR是想把数据库改成动态的。 其实我在这个FR下,提的是
所以其实不太冲突。 |
刚才理解错了这里重新总结一下需求 1.自定义属性支持中文名 |
我也总结一下这个FR具体的需求,主要需求集中在属性而非数据库,个人认为这样改动带来的收益是非常高的。 考虑的方面在提议时我考虑了下面这些内容:
主要提议我的主要提议是将内置、数据库、自定义属性合一,只根据作用范围的不同分为全局属性(工作空间)和局部属性(数据库)。
|
支持一下,整合属性确实方便维护,减少四处跑的压力,也方便直接批量管理文档元数据 |
感谢提议,但是大改是不太可能了,其中有个复杂的问题是一个块可以绑定多个库,这种情况下属性的作用域管理非常困难,所以我们是通过模板字段解决单向全局属性场景的,这也是复杂度和扩展性上面权衡的结果。 |
真的很需要全局数据库,有没有这个功能,完全是质的变化。 |
支持 |
就目前的使用来看,自定义属性和数据库属性有种割裂感,比如markdown的yaml导入思源生成的是自定义属性,而数据库中能编辑操作的是数据库属性。 假设用户从自带的md文件迁移入思源,想维护一个基于原来md的yaml内容的数据库,如果属性之间能连通的话体验会更好。 |
不知道是否涉及全局属性的功能,但如果有以下功能的完善,相信会有更好的体验: |
确实,看大伙搁链滴整JB没逑用的数据库视图,还不如统一属性呢 |
顶,支持 |
顶一个,支持一下,全局属性真的很重要(可以自己选择哪个字段作为全局属性,哪个字段作为独立的属性就更棒了) |
In what scenarios do you need this feature?
现在思源中的块属性有三类:内置、数据库、自定义属性。但是到这个阶段我认为思源的属性已经有点复杂且难以管理了,希望借此抛砖引玉(换句话说就是多来些大佬讨论吧,求求了!)
在体验其他笔记软件的过程中,按照它们的使用方式,我个人大致将这些笔记软件的属性分为了全局属性(工作空间属性)和局部属性(数据库属性)。以anytype、tana、未来的logseq db还有obsidian(obsidian暂时只有属性没有数据库)为代表的笔记软件选择了全局属性作为方案,而notion等软件则选择了数据库属性作为方案。这两者在一定程度上可以互补。
全局属性可以做到多个数据库共用一个属性和属性值(tana),甚至更进一步,像anytype一样,每个关系(属性)都是一个数据库,直接在文档里用就好。这个方案的优点非常明显,例如我有一个专用于查询的模板属性,我可以在这个属性中预先填入多个模板以待日后直接使用,当我发现某一个模板有更好的方案时,我只需要修改这个属性值,所有使用该模板属性和属性值的条目都会随之生效,还可以通过属性反向查找出所有使用它的数据库和条目,这些功能通过关联数据库主键的方式很难做到。另外我也建议将自定义属性和标签视为全局属性来处理,自定义属性现在只能依靠社区插件来解决复用的问题,而标签其实也不应该被放弃,因为它能被导出,这一点是目前的多选做不到的。
不过这个方案也有一些缺点,一些不希望看到的零碎属性也会被当作全局属性夹杂在其中,而这恰恰是局部属性的优点,只能在创建它的数据库中维护和使用,互不影响干扰,但在其他方面的灵活性很低。
Describe the optimal solution
不论是思源的内容块还是本体的其他功能,在使用上都非常灵活,就像积木一样可以自己搭建起适合自己的流程和内容。数据库也可以稍微灵活些
考虑到数据库已经推出一段时间了,且全局属性实际上和自定义属性的存在有些冲突。
我想到的解决办法是
今天的输出就写到这里吧,晚上继续,人已经写晕了,D大先别关issue!
Describe the candidate solution
No response
Other information
No response
The text was updated successfully, but these errors were encountered: