Title: Query 类的 or_ 方法和 and_ 方法中存在问题 · Issue #516 · leancloud/python-sdk · GitHub
Open Graph Title: Query 类的 or_ 方法和 and_ 方法中存在问题 · Issue #516 · leancloud/python-sdk
X Title: Query 类的 or_ 方法和 and_ 方法中存在问题 · Issue #516 · leancloud/python-sdk
Description: 参考代码 2.9.3 版本:https://github.com/leancloud/python-sdk/blob/v2.9.3/leancloud/query.py#L117 query = Query(queries[0]._query_class._class_name) 不应该使用 Query 声明新的对象,而应该使用 cls 来声明,否则会导致继承 Query 得来的 MyQuery 类的 or_ 方法和 and_ 方法返回父类声明的实例。 In [1]: ...
Open Graph Description: 参考代码 2.9.3 版本:https://github.com/leancloud/python-sdk/blob/v2.9.3/leancloud/query.py#L117 query = Query(queries[0]._query_class._class_name) 不应该使用 Query 声明新的对象,而应该使用 cls 来声明,否则会导致继承 Query 得来的 MyQue...
X Description: 参考代码 2.9.3 版本:https://github.com/leancloud/python-sdk/blob/v2.9.3/leancloud/query.py#L117 query = Query(queries[0]._query_class._class_name) 不应该使用 Query 声明新的对象,而应该使用 cls 来声明,否则会导致继承 Query 得来的 MyQue...
Opengraph URL: https://github.com/leancloud/python-sdk/issues/516
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Query 类的 or_ 方法和 and_ 方法中存在问题","articleBody":"参考代码 2.9.3 版本:https://github.com/leancloud/python-sdk/blob/v2.9.3/leancloud/query.py#L117\r\n```python\r\nquery = Query(queries[0]._query_class._class_name)\r\n```\r\n\r\n1. 不应该使用 Query 声明新的对象,而应该使用 cls 来声明,否则会导致继承 Query 得来的 MyQuery 类的 or_ 方法和 and_ 方法返回父类声明的实例。\r\n```python\r\nIn [1]: from leancloud import Query\r\n\r\nIn [2]: class MyQuery(Query):\r\n ...: pass\r\n ...:\r\n\r\nIn [3]: type(MyQuery('User').or_(MyQuery('User'), MyQuery('User')))\r\nOut[3]: leancloud.query.Query\r\n```\r\n\r\n2. 没有正确处理 ObjectMeta 中特殊处理过的 _ 开头的表。\r\n```python\r\nIn [1]: from leancloud import User\r\n\r\nIn [2]: User.query._query_class\r\nOut[2]: leancloud.user.User\r\n\r\nIn [3]: User.query.or_(User.query, User.query)._query_class\r\nOut[3]: leancloud.object_._User\r\n```","author":{"url":"https://github.com/Ma233","@type":"Person","name":"Ma233"},"datePublished":"2021-05-19T06:55:35.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/516/python-sdk/issues/516"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:24d52da7-85f2-0134-a8d5-d2327f6e969f |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 9FDA:11849:4D1A6C:69F12C:69772DC2 |
| html-safe-nonce | c101f7c6a9d2f38420d7300bae0d2a41aa2ea8447dcc43ae8ae514b0ab3bc84c |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5RkRBOjExODQ5OjREMUE2Qzo2OUYxMkM6Njk3NzJEQzIiLCJ2aXNpdG9yX2lkIjoiNTk1NzUyNjMxODg4OTc3NDUzMCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 6bd46004c8ba34bea000be50333bed4ad2dcf1ddec7dafaa57761c842721e39a |
| hovercard-subject-tag | issue:895061370 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/leancloud/python-sdk/516/issue_layout |
| twitter:image | https://opengraph.githubassets.com/172d2e6144150eaf47e2ebf17717bbc347dd2c8c6f808087427b946b07fdcb44/leancloud/python-sdk/issues/516 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/172d2e6144150eaf47e2ebf17717bbc347dd2c8c6f808087427b946b07fdcb44/leancloud/python-sdk/issues/516 |
| og:image:alt | 参考代码 2.9.3 版本:https://github.com/leancloud/python-sdk/blob/v2.9.3/leancloud/query.py#L117 query = Query(queries[0]._query_class._class_name) 不应该使用 Query 声明新的对象,而应该使用 cls 来声明,否则会导致继承 Query 得来的 MyQue... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | Ma233 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 01d198479908d09a841b2febe8eb105a81af2af7d81830960fe0971e1f4adc09 |
| turbo-cache-control | no-preview |
| go-import | github.com/leancloud/python-sdk git https://github.com/leancloud/python-sdk.git |
| octolytics-dimension-user_id | 6660518 |
| octolytics-dimension-user_login | leancloud |
| octolytics-dimension-repository_id | 26794168 |
| octolytics-dimension-repository_nwo | leancloud/python-sdk |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 26794168 |
| octolytics-dimension-repository_network_root_nwo | leancloud/python-sdk |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | f752335dbbea672610081196a1998e39aec5e14b |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width