Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

自定义的_id值查询 的时候有问题 #9

Open
Rekoe opened this issue Aug 24, 2017 · 7 comments
Open

自定义的_id值查询 的时候有问题 #9

Rekoe opened this issue Aug 24, 2017 · 7 comments

Comments

@Rekoe
Copy link
Member

Rekoe commented Aug 24, 2017

如果自定义的字符串类型的_id 会报 ObjectId 验证问题

ZMoDoc old = zMoCo.findOne(ZMoDoc.ID("rekoe"));

错误

2017-08-23 17:23:35,633 [DEBUG][org.mongodb.driver.protocol.query] - Query completed
Exception in thread "main" java.lang.RuntimeException: 'rekoe' not ObjectId
	at org.nutz.lang.Lang.makeThrow(Lang.java:132)
	at org.nutz.mongo.ZMoDoc.put(ZMoDoc.java:497)
	at org.nutz.mongo.ZMoDoc.putAll(ZMoDoc.java:558)
	at org.nutz.mongo.ZMoDoc.NEW(ZMoDoc.java:41)
	at org.nutz.mongo.ZMoDoc.NEW(ZMoDoc.java:82)
	at com.anawin.mongo.StudentService.fetch(StudentService.java:55)
	at com.anawin.mongo.StudentTest.main(StudentTest.java:16)
@Rekoe
Copy link
Member Author

Rekoe commented Aug 24, 2017

@zozoh

@Rekoe
Copy link
Member Author

Rekoe commented Aug 24, 2017

用的最新版的 nutzmongodb

@wendal
Copy link
Member

wendal commented Aug 24, 2017

_id只能是ObjectId,其他不合法的

@Rekoe
Copy link
Member Author

Rekoe commented Aug 24, 2017

有些时候 会自定义_id值 这情况下 就不能用了
但命令行是支持的
@wendal

@zozoh
Copy link
Member

zozoh commented Sep 4, 2017

额,完全没有考虑到这个情况哦。
我都是自己开一个字段存自定义 ID 的 -_-!

好像还不太好改

@ansjsun
Copy link

ansjsun commented Sep 5, 2017

+1.我们用的都是uuid。不过话又说回来。我没有用nutzmongo额。

@Rekoe
Copy link
Member Author

Rekoe commented Sep 5, 2017

ZMoDoc doc = ZMoDoc.NEW();
doc.setDBobj(new BasicDBObject("_id", "rekoe"));
DBCursor cursor = zMoDB.c("Student").find(doc);

@ansjsun 这样来用

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants