Skip to content

改进: 动态查询(条件查询简化版) #385

@tdafricaaaaaa

Description

@tdafricaaaaaa

我刚才重新想了想,确实之前的方案过于复杂,并且相比实现的效果有点得不偿失,我和AI对话之后摸索出了另一个改进方法,也就是简单很多的动态查询:
“1. 核心概念
在现有单个查询模式的基础上,引入一种轻量级的动态变量机制。
查询语句中允许使用占位符(如 {{current.学科}}),其含义为“取当前正在编辑的块(即错题卡)的‘学科’属性值”。
系统在渲染引用列表时,自动将占位符替换为实际属性值,从而实现实时、动态过滤。
这与您原建议的“多个查询模式 + 绑定”完全不同:无需创建多个模式、无需额外绑定设置、无需新增任何配置面板,仅在查询引擎层面增加一个“变量替换”步骤。
2. 具体工作流程(步步详解)

用户在“错题卡”SuperTag 中,为“相关知识点”属性设置一个查询模式(与当前操作完全一致)。
在查询语句中写入动态变量,例如:
tag=知识点卡 and 学科 = {{current.学科}}
用户在错题卡块中选择或修改“学科”属性(例如从“统计学”切换为“宏观经济学”)。
Orca Note 检测到属性变更后,立即:
将 {{current.学科}} 替换为实际值(如“宏观经济学”);
重新执行查询;
更新引用建议列表(autocomplete / 弹窗)。

引用列表仅显示匹配当前学科的知识点卡,跨学科内容自动被过滤。

整个过程对用户完全透明,无需额外点击或切换模式。
3. 具体示例

查询模式设置(仅需设置一次):texttag=知识点卡 and 学科 = {{current.学科}}
场景1:错题卡的“学科”属性 = 统计学
→ 查询实际执行为:tag=知识点卡 and 学科 = 统计学
→ 引用列表只出现统计学的知识点卡。
场景2:用户将“学科”改为 宏观经济学
→ 查询自动变为:tag=知识点卡 and 学科 = 宏观经济学
→ 引用列表瞬间切换,只显示宏观经济学的知识点卡。”

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions