2013-04-09 2 views
19

Firebaseのデータビューを使用して子を作成しようとしていますが、作成ノードが直接消えたり表示されないように見えます。 私は値のフィールドを空のままにしようとしましたが、これは全く機能しませんし、値フィールドにnullを書き込んでいます。 私は間違っているのですか?Firebaseで空の子レコードを作成する

-Fabian

答えて

33

ヌルと空の値が存在しないレコードと同じです。存在させたい場合は、値を設定する必要があります。

つまり、レコードが存在するかどうかをテストするときに、キーがデータベースにあるかどうかを調べるつもりがない場合は、パス(キーの場所)にデータがあるかどうかを調べることになります。

提案:その場所にスローするデータがあるまで、0かfalseのような偽の値を使用してください。 SQLの場合と同じようにデータ型に制限されているわけではないので、後でオブジェクト/配列/その他に置き換えることができます。

+0

これは答えとしてマークできると思います。 –

+0

Firebase Slackチャットの人々の話をしたところ、「0」または「false」の値を設定する必要はないようです。これは、データがあるかどうかを確認するためにチェックを行いたい場合は、その場所が存在するかどうかを確認するだけです。そうでない場合はnullが返され、そこにデータがないことを知らせます。 –

+7

私はこれがfirebaseの本当に厄介な特徴であると感じます。絶えず何かが存在するかどうかをチェックし、それがなければ作成するのは苦痛です。特に、チェーンを下っていくにつれて各プロパティをチェックする必要があるため、オブジェクトが大きく入れ子になっています。 nullのないデータベースは単なる愚かなものであり、 '0'や偽のようなものを使用すると、欠落しているデータを誤って虚偽表現することになります。なぜnullsを許可しないのですか?? – smaccoun

関連する問題