javascript - Bookshelf 意外传递对象而不是值时执行奇怪的查询
问题描述
如果我发送正确的值,即它的 ID,我有一个执行得非常好的查询。但是,如果我由于某种原因最终错误地发送了一个对象,那么它只会为我的 ID 假定一些值并返回给我一个非常令人担忧的值。查询很简单:
Did.forge({id:user.did}).fetch()
我期望返回具有我发送的身份的正确值。但是发生的情况是,由于我不小心发送了一个对象,我得到了一个完全预期的其他值。我再次对此进行了测试并尝试发送:
{did:{test:'asdadad',hoho:'421141144124'}}
而不是这个
k981t452-2af6-90db-b169-f05b24907801
对象中的任何值都不是用户返回值的任何 id。
所以我关心的是了解会发生什么,因为如果我不能相信 ORM 在收到不应该收到的东西时返回 no user found,那么很难使用这个框架。那么我可以配置什么来建立更好的信任吗?
我创建了一个解释用例的要点:https ://gist.github.com/vongohren/e672da6d87143afe82837657df755d7b
这也存在一个现有问题,但它已关闭,但未得到正确解决和解释:https ://github.com/bookshelf/bookshelf/issues/1402
解决方案
推荐阅读
- python - 如何使用 selenium 和 python 在 Firefox 中禁用文件下载弹出窗口?
- c++ - 尝试从 dev c++ mingw 4.8.1 中的文件读取时收到分段错误
- oop - Dlang: get names of all superclasses for an instance as array
- gradle - 任务 ':app:processDebugResources'.1 执行失败
- wordpress - 如何使用 HTTP/2 安装 Wordpress
- apache-poi - 水平合并单元格时需要从右边去掉边框
- amazon-web-services - 从 lambda@edge 为查看器请求事件进行 DynamoDb 调用
- javascript - 如何在javascript中的特定字符串之后更改句子的一部分
- deployment - Keycloak 应该部署为单独的微服务,这是什么意思?
- python - 如何继承 QPointF 并设置自定义属性?