2017-02-02 1 views
0

私はアプリケーションを構築していますが、特定のURLを入力してモデルを構築しようとしているときにJSONレスポンスを考えるのが簡単でした。JSONレスポンスから基底モデルを作成/推測する

JSONは次のようになります。私は、次のようなモデルの作成を開始

{ 
    "idea": { 
    "title": "", 
    "description": "", 
    "tags": [ 
     "", 
     "", 
     "" 
    ], 
    "priority": "", 
    "PD": [ 
     { 
      "question": "what's your name?", 
      "answer": "" 
     }, 
     { 
      "question": "what's your address?", 
      "answer": "" 
     }, 
     ], 
    "TOC": [ 
     { 
      "question": "Age?", 
      "answer": "" 
     }, 
     { 
      "question": "Gender?", 
      "answer": "" 
     }, 
    "issues": [ 
     "issue1", 
     "issue2" 
    ], 
    "tasks": [ 
     "task1", 
     "task2" 
    ], 
    "note": "", 
    "image": [ 
     "base64(1)", 
     "base64(2)" 
    ] 
    } 
} 

(これはモデルのために多かれ少なかれDjangoの構文ですが、私はロジックが任意のフレームワークのために同じまま推測):

class Tag(): 
    name = string; 
    idea = ForeignKey(Idea); 

class Prototype(): 
    base64 = string; 
    idea = ForeignKey(Idea); 

class Issue(): 
    name = string; 
    idea = ForeignKey(Idea); 
    task = ManyToMany(Task); 

class Task(): 
    name = string; 
    idea = ForeignKey(Idea); 

class Idea(): 
    title = string; 
    description = string; 
    priority = string; 
    note = string; 

私はPD、TOC、HOWの部分についてはわかりません。それらはIdeaの属性であるか、別々のモデルである可能性があり、その場合、それらの間の関係は何か?

答えて

1

彼らはどちらかの可能性:

あなただけのJSONフィールド

でJSONとしてそれらを保つことができるか、彼らはOneToOneField

class Idea(): 
    pd = OneToOneField(Question) 
    toc = OneToOneField(Question) 

class Question(): 
    question = 'foo' 
    other_question = 'bar' 
+0

JSONfieldは素晴らしいに見える経由OneToOne関係可能性があり、私はdidnのそれについて知りません。ありがとう! – Nitish

関連する問題