Py学习  »  Python

Python模块故障

softweyr • 5 年前 • 1556 次点击  

我正在使用Python学习Cassandra对象映射器,我有以下小程序来填充数据库表。这工作很好。。。

from cassandra.cqlengine.connection import setup
from cassandra.cqlengine.management import sync_table
from cassandra.cqlengine.models import Model
from cassandra.cqlengine import columns
from uuid import uuid4

##import Courses

class Courses(Model):
    id = columns.UUID(primary_key = True)
    title  = columns.Text()
    duration = columns.Integer()

setup(['chelly', ], 'objectlake', protocol_version = 3)

# Create some courses to inflict on our hapless trainees

courses = [
    { 'title' : "Conflict of Interest" , 'duration' : 120 },
    { 'title' : "Resolving Conflict" ,   'duration' : 60 },
    { 'title' : "Time Cards" ,           'duration' : 30 },
    { 'title' : "PTO" ,                  'duration' : 30 },
    { 'title' : "Managing Upwards" ,     'duration' : 120 }
]

sync_table(Courses)

for course in courses:
    Courses.create(id = uuid4(), title = course['title'], duration = course['duration'])

print('Done-ish?')

from cassandra.cqlengine.models import Model
from cassandra.cqlengine import columns

class Courses(Model):
    id = columns.UUID(primary_key = True)
    title  = columns.Text()
    duration = columns.Integer()

我有个例外 ValueError: Models must be derived from base Model. sync_table 打电话来。我确信我已经把类的声明拖拉到模块中,但是找不到我做错了什么。我不知道为什么模块中的对象不是模型。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53428
 
1556 次点击  
文章 [ 1 ]  |  最新文章 5 年前
ForceBru
Reply   •   1 楼
ForceBru    6 年前

当你这样做的时候 import Courses ,名称 Courses 模块 打电话 课程 班级 刚好在这个模块里。

模块 课程

你可能想把 打电话 这样地:

from Courses import Courses