Skip to content

Commit 91e14a3

Browse files
committed
docs: synced via GitHub Actions
1 parent 2227bf7 commit 91e14a3

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

src/dev-guide/graphql/left-join.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,17 @@ QueryBean中增加了leftJoinProps集合属性,这里指定的属性会转换
1919
翻译成EQL对象查询时会变为
2020

2121
```sql
22-
select o
22+
select o
2323
from MyEntity o left join o.dept
2424
where o.dept.name = 'a'
2525
```
2626

27+
前台查询时可以通过url传递参数
28+
29+
```
30+
/r/NopAuthUser__findPage?query_leftJoinProps=dept,xxx
31+
```
32+
2733
## 安全性控制
2834

2935
为了避免前台发送预料之外的关联条件导致出现攻击,CrudBizModel中会检查leftJoinProps中的属性已经在meta的`biz:allowedLeftJoinProps`

src/dev-guide/xlang/xmeta.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,13 @@ NopGraphQL引擎返回的对象信息完全由XMeta来定义。如果一个属
227227

228228
需要注意的是,在parent属性上设置queryable并不会自动使得parent的所有属性都开放查询。必须逐个属性指定。
229229

230+
## 属性映射mapToProp
231+
232+
meta中配置`<prop name="xyz" mapToProp="abc.xyz">` 则前台看到的属性名就是`xyz`,而不是`abc.xyz`
233+
mapToProp的含义是后台执行时将GraphQL请求中的字段名翻译为mapToProp对应的属性访问路径去获取数据。
234+
在view模型中使用的也是prop的name,而不是mapToProp。如果前台要直接使用`abc.xyz`,也需要在meta中配置`<prop name="abc.xyz">`,这种设计是出于安全性考虑,不直接允许访问关联对象
235+
236+
230237
## 根据domain自动推定prop配置
231238

232239
`meta-gen.xlib`的DefaultMetaPostExtends标签为所有模型驱动自动生成的meta增加了post-extends处理

0 commit comments

Comments
 (0)