Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.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 python shell数据访问错误_Python_Django - Fatal编程技术网

django python shell数据访问错误

django python shell数据访问错误,python,django,Python,Django,我有一个django模型,如下所示: from django.db import models from mptt.models import MPTTModel, TreeForeignKey class deg_course_cat(models.Model): degree_code = models.CharField(max_length=24) specialization = models.CharField(max_length=48) category

我有一个django模型,如下所示:

from django.db import models
from mptt.models import MPTTModel, TreeForeignKey

class deg_course_cat(models.Model):
    degree_code = models.CharField(max_length=24)
    specialization = models.CharField(max_length=48)
    category_level1 = models.CharField(max_length=48)
    category_level2 = models.CharField(max_length=96)
    category_level3 = models.CharField(max_length=48)
    min_credit = models.IntegerField()
    max_credit = models.IntegerField()
    primarystuff = models.CharField(max_length=24)

class deg_course_cat_mptt(MPTTModel):
    name = models.CharField(max_length=100, unique=False)
    min_credit = models.IntegerField(null=True)
    max_credit = models.IntegerField(null=True)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children')

    class MPTTMeta:
        order_insertion_by = ['name']

# Create your models here.
我的deg_course_cat表中已经填写了一些数据

当我试图通过pythonshell访问数据中的一列时,我遇到了一个错误。我试过这样的方法:

Python 2.7.4 (default, Sep 26 2013, 03:20:56) 
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from studentapp.models import deg_course_cat
>>> from studentapp.models import deg_course_cat_mptt
>>> degree_code.items()
Traceback (most recent call last):
  File "<console>", line 1, in <module>
NameError: name 'degree_code' is not defined
Python 2.7.4(默认,2013年9月26日03:20:56)
[GCC 4.7.3]关于linux2
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
(InteractiveConsole)
>>>从studentapp.models导入deg_course_cat
>>>从studentapp.models导入课程目录
>>>学位代码项目()
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
NameError:未定义名称“度代码”

我哪里出错了?

您不能访问这样的模型字段。首先,
degree\u code
不导入。此外,您不能导入它,您可以通过以下模型访问它:
deg_course\u cat.degree\u code
,但我不确定您想用它做什么

如果要获取所有的度代码值,请使用with
flat=True

>>> deg_course_cat.objects.values_list('degree_code', flat=True)

这将返回数据库中所有
degree\u code
值的列表。

我正在尝试使用模型中的数据创建mppt结构。您好,还有一个问题!如何从同一列中获取不同的值?@AbhishekReddy当然,只需从中设置:
set(deg_-course\u cat.objects.values\u list('degree_-code',flat=True))
。嗨,你能告诉我如何在这个命令中使用过滤器吗?我正在尝试一些类似set(deg_-course_-cat.objects.filter(degree_-code='AA.ARTS')。values_-list('degree_-code',flat=True))@AbhishekReddy当然,就这么做吧,例如:
set(deg_-course_-cat.objects.filter(min_-credit=10)。values_-list('degree_-code',flat=True))
离题,我建议用类名代替类名,见PEP8