gpt4 book ai didi

python - Django 如何创建表(sqlite)?

转载 作者:太空宇宙 更新时间:2023-11-04 02:23:44 26 4
gpt4 key购买 nike

我正在看这个例子 django-multiple-users

当我进入 sqlite shell 时

sqlite> .tables 
auth_group classroom_subject
auth_group_permissions classroom_takenquiz
auth_permission classroom_user
classroom_answer classroom_user_groups
classroom_question classroom_user_user_permissions
classroom_quiz django_content_type
classroom_student django_migrations
classroom_student_interests django_session
classroom_studentanswer

models.py中有8个类

class User(AbstractUser):
is_student = models.BooleanField(default=False)
is_teacher = models.BooleanField(default=False)

class Subject(models.Model):
class Quiz(models.Model):
class Question(models.Model):
class Answer(models.Model):
class Student(models.Model):
class TakenQuiz(models.Model):
class StudentAnswer(models.Model):

Forms.py(在上面的 github 链接中显示)有几种形式。

表单也可以创建表格吗?classroom_user_user_permissions 从何而来?

最佳答案

Do forms also create tables?

,表单用于询问用户的输入。它们可以“嵌入”到模板中,并且可以很容易地用于将响应解码为对象等。有些表单确实直接将(更新的)值存储在模型实例中。

但是一个表单可以对任何模型、一个模型或同时对多个模型起作用。此外,一旦表单消失,它携带的数据也会消失(当然除非它存储在模型、文件或其他持久结构中)。

Where do classroom_user_user_permissions come from?

这是因为您可能在 UserUserpermission 之间定义了一个 ManyToManyField。所以并不是所有的表都直接映射到模型上。有些关系需要额外的表,因为这些不能直接存储在两个表之一中。

关于python - Django 如何创建表(sqlite)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50970582/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com