質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Redux

Reduxは、JavaScriptアプリケーションの状態を管理するためのオープンソースライブラリです。ReactやAngularで一般的にユーザーインターフェイスの構築に利用されます。

MongoDB

MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

348閲覧

mongoose使用時に生成される「_id」について

kazoogon

総合スコア281

Redux

Reduxは、JavaScriptアプリケーションの状態を管理するためのオープンソースライブラリです。ReactやAngularで一般的にユーザーインターフェイスの構築に利用されます。

MongoDB

MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2018/09/01 10:56

環境

MERN (express, mongoose使用)でCRUD機能作成

今していること

投稿されている記事をDBからとってきて、表示する。
参考にしたサイトによるとこのような書き方

class PostFeed extends Component { render() { const { posts } = this.props; return posts.map(post => <PostItem key={post._id} post={post} />); } }
//DB内の情報 { "_id": { "$oid": "5b895ab37ed2f061b1a1d957" }, "text": "its my first post from Jhon", "name": "hoge", "avatar": "//www.gravatar.com/avatar/hoge", "user": { "$oid": "5b87bfcd8760f9d8e5e2664e" }, "likes": [ { "_id": { "$oid": "5b899c8dba0f647a855f32d7" }, "user": { "$oid": "5b87bfcd8760f9d8e5e2664e" } } ], "comments": [], "date": { "$date": "2018-08-31T15:11:47.215Z" }, "__v": 1 }

疑問

<PostItem key={post._id} post={post} />
の「_id」について、調べてみると「mongoose使用の場合自動的に_idという値が割りふてられる」と分かる。
→しかしDB内では「$oid」との表記
→プログラム自体はこれで動くのですが、一体どういうことか不明なので質問させていただきました。

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

_idが自動的に割り振られるのは、何も指定しなかった場合です。

データをinsertするときに、_idに対してoid形式で指定しているのではないでしょうか。

なおoidというのはMongoDBのExtended JSONで出てくる形式です。
https://docs.mongodb.com/manual/reference/mongodb-extended-json/#oid

投稿2018/11/26 10:37

kabao

総合スコア648

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問