Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django-在数据库中存储数字或文本答案的最佳方式是什么?_Django_Django Models_Django Database - Fatal编程技术网

Django-在数据库中存储数字或文本答案的最佳方式是什么?

Django-在数据库中存储数字或文本答案的最佳方式是什么?,django,django-models,django-database,Django,Django Models,Django Database,我正在做一个学生调查项目。存储问题的模型类似于: ID Question Type 1 is good teacher? Choice 2 What do you like about Open-answer the teacher? 然后在选择类问题中,学生将选择一个选项,例如:完全同意,这将存储一个数字代码,例如5。但在开放式回答问题中,学生将写下文本 答案模型中应该存储这些答案的字段是什么?

我正在做一个学生调查项目。存储问题的模型类似于:

ID     Question                 Type 
1      is good teacher?         Choice 
2      What do you like about   Open-answer
       the teacher?
然后在选择类问题中,学生将选择一个选项,例如:完全同意,这将存储一个数字代码,例如5。但在开放式回答问题中,学生将写下文本


答案模型中应该存储这些答案的字段是什么?可能是文本字段?

如果要使用同一列打开文本,请将您的选择作为文本。。。因此,当用户选择选项时,您可以编写一个固定文本,而不是设置1、2、3、4,这样可以使您的数据更易于阅读

ANSWER = (
    ("Yes", "Yes"),
    ("No", "No"),
    ("Neutral", "Neutral"),
)
或者再做两列。。。一个用于设置问题类型或选择文本,另一个用于存储选项,您可以将其设置为外键,而不是使用静态值,这可以从一个模型加载

ID     Question                 Type             Answer-Text         AnswerID 
1      is good teacher?         Choice           null                1
2      What do you like about   Open-answer      "The way he swag"   null
       the teacher?
或者把所有的东西都和绳子混在一起。。。但是您在获取这个整数ID时会遇到一些问题。。。当您尝试获取整数int1时,将抛出一些错误。int1将起作用,但int swag使用文本字段引发错误的方式可能是一个坏主意,因为您将int与字符串类型对象混合使用,这是绝对不推荐的


你可以做的一件事是把这看作两个不同的领域。一个Choicefield和一个TextField。这样,当用户想要使用开放式答案时,可以选择空值空字符串。然后,您可以将空字符串计算为无任何内容。

您是否要求django admin的实现?@scharette不,我不是在说admin,我是说,对于Production,这取决于您希望如何使用数据。。。