Django JSON与PostgreSQL中的表
我正在尝试制作一份调查问卷,并正在考虑两种数据结构: JSON:我可以使用JSON存储不同的问题,如下所示:Django JSON与PostgreSQL中的表,django,postgresql,relational-database,Django,Postgresql,Relational Database,我正在尝试制作一份调查问卷,并正在考虑两种数据结构: JSON:我可以使用JSON存储不同的问题,如下所示: { "questions": [ { "question": "how old are you?", "type": "input_int", }, "question": "what is your name", "type": "input_stri
{
"questions": [
{
"question": "how old are you?",
"type": "input_int",
},
"question": "what is your name",
"type": "input_string",
},
{
"question": "how are you today?",
"type": "multiple_choice",
"options": [
"good",
"bad"
]
},
]
}
InputIntTable
- Question
- Order
InputStringTable
- Question
- Order
MultipleChoiceTable
- Question
- Options
- Order
或每种类型问题的表格:
{
"questions": [
{
"question": "how old are you?",
"type": "input_int",
},
"question": "what is your name",
"type": "input_string",
},
{
"question": "how are you today?",
"type": "multiple_choice",
"options": [
"good",
"bad"
]
},
]
}
InputIntTable
- Question
- Order
InputStringTable
- Question
- Order
MultipleChoiceTable
- Question
- Options
- Order
我用的是Django。哪种方法在计算、结构和成本方面都更适合宿主。哪个需要更多的存储空间?谢谢 如果您不需要对问题类型或任何其他问题字段进行频繁筛选,则可以使用Json结构。但如果将问题保存为Json,则无法进行查询。所以我认为你应该用桌子。Json应仅用于保存仅用于显示或需要用作dict IMHO的数据。但是,如果需要像ORM提供的那样进行查询,则应该使用表 您应该有如下模型: 问题:
- 问题:
- 命令
- 类型
- 选项(字符串列表,类型为“input\u int”或“input\u string”时为空)
- 问题:
- 命令
- 类型
- 选项(字符串列表)
- 问题(问题模型的外键)
- 问题:
- 命令
- 类型
- 选项(字符串列表,类型为“input\u int”或“input\u string”时为空)
- 问题:
- 命令
- 类型
- 选项(字符串列表)
- 问题(问题模型的外键)