Closed chuan6 closed 4 years ago
从 websocket 事件上可能单复数形式共存的对象名称到唯一确定的表名(一般 是单数形式)的转换,是通过一个简单的 cutSTrailing 函数做到的,它无差别 地把结尾的 s 给拿掉,没有任何智能的逻辑,也对当前词汇无感。
s
将这个转换得到的结果与表名匹配,原先是 alias 匹配之后唯一的匹配逻辑。 导致一些以 s 结尾的对象名(如:taskflowstatus)被误砍 s,结果 (如:taskflowstatu)与表名不能匹配,导致需要特别定义 alias 条目来绕 开,让后期新增对象名的过程多了一个可能的坑。
taskflowstatus
taskflowstatu
这里调整为,在 alias 匹配之后,优先做直接匹配,只有当直接匹配失败,才 尝试砍掉 s 匹配单数。让这个不智能的单复数转换逻辑成为直接匹配的补充, 而不是替换。
Coverage decreased (-0.002%) to 95.911% when pulling 8b8923a87ad1cfa961b16612a82868555fed9010 on refactor/cut-s-trailing into f99e3f1d87e5d6d17eb67e50057a342e5f20ddd4 on release.
从 websocket 事件上可能单复数形式共存的对象名称到唯一确定的表名(一般 是单数形式)的转换,是通过一个简单的 cutSTrailing 函数做到的,它无差别 地把结尾的
s
给拿掉,没有任何智能的逻辑,也对当前词汇无感。将这个转换得到的结果与表名匹配,原先是 alias 匹配之后唯一的匹配逻辑。 导致一些以
s
结尾的对象名(如:taskflowstatus
)被误砍s
,结果 (如:taskflowstatu
)与表名不能匹配,导致需要特别定义 alias 条目来绕 开,让后期新增对象名的过程多了一个可能的坑。这里调整为,在 alias 匹配之后,优先做直接匹配,只有当直接匹配失败,才 尝试砍掉
s
匹配单数。让这个不智能的单复数转换逻辑成为直接匹配的补充, 而不是替换。