2017-03-26 24 views
1

私は現在、チケット予約システムを開発しています。ここでは、ユーザーがイベントを選択したり、セクションのリストを表示したり、セクションには別のユーザーが空いているか占有しているかの予約リストが含まれています。私はバックエンドとしてFirebaseを使用することを選択しましたが、JSONを使用してデータベースとゼロに関する経験はほとんどありませんでした。このようなシステムをどのように構築するのですか?Firebaseを使用したチケット予約システムのJSON構造ですか?

これは私がこれまでに得たものである:

{ 
    "events" : { 
    "e2017" : { 
     "name" : "event 2017", 
     "date" : "1490567256550" 
    } 
    }, 
    "eventSections" : { 
     "e2017" : { 
      "e2017-A" : { 
      "isFull" : false, 
      "totalSeats": 40, 
      "bookedSeats": 20 
      } 
     } 
    }, 

    "sectionSeats" : { 
     "e2017-A" : { 
      "A1": { 
      "isBooked" : true, 
      "bookedBy" : "userId" 
      }, 
      "A2": { 
      "isBooked" : false, 
      "bookedBy" : false 
      } 
     } 
    } 

} 
+0

これは非常に広いトピックです。モデルをすでに持っていて、それに対して特定のユースケースを実装する方法について不思議でない限り、これはStack Overflowが答えるには広すぎると投票しています。代わりに[NoSQLデータモデリング](https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/)と[Firebase for SQL開発者](https:// www。 youtube.com/playlist?list=PLl-K7zZEsYLlP-k-RKFa7RyNPa9_wCH2s)。 –

+0

@FrankvanPuffelenは、実装しようとしている構造を表示するために私の質問を更新しました – Grimbox

答えて

0

次のような構造は、あなたの質問の非常に具体的なユースケースのための構成例です。

1) user should be able to choose an event 
2) see a list of sections 
3) a section contains a list of seats 
4) (seats are) either free or occupied/booked by another user 

と、これは答えですが基準

events 
    event_0 
     sections 
      section_0 
      seats 
       seat_0: "free" 
       seat_1: "occupied" 
      section_1 
      seats 
       seat_0: "occupied" 
       seat_1: "occupied" 
     event_1 
     sections 
      section_0 
      seats 
       seat_0: "free" 
       seat_1: "occupied" 
      section_1 
      seats 
       seat_0: "occupied" 
       seat_1: "occupied" 

が、それは一つだけではないことを満たしている構造:あなたは、以下の基準を持っていました。例えば。どのイベントに自由席があるのか​​を知りたければどうなりますか?コード内でフィルタリングしない限り、実際にはこの構造体にそのデータを問い合わせることはできません。

しかし、イベントをクリックしてより多くのデータを得ることができるイベントリストをユーザーに提示すると、この構造は、利用可能なセクションとシートを提示するのに使用できるので、問題なく機能します。

具体的な使用例が異なる場合は、より多くのデータで質問を更新してください。

関連する問題