3

私はPython3.332ビットのWindowsで作業しています。peeweeをインストールしましたが、その機能のいくつかを試してみたいと思います。Peewee Quickstart(http://peewee.readthedocs.org/en/latest/peewee/quickstart.html)から始めました。

私のコードは次のようになります。

from peewee import *

db = SqliteDatabase('people.db')

class Person(Model):
    name = CharField()
    birthday = DateField()
    is_relative = BooleanField()

    class Meta:
            database = db

class Pet(Model):
    owner = ForeignKeyField(Person, related_name = "pets")
    name = CharField()
    animal_type = CharField()

    class Meta:
            database = db

Person.create_table()
Pet.create_table()

エラーが発生します:

File "<stdin>", line 1, in <module>
File "<string>", line 21, in <module>
File "C:\Python33\lib\site-packages\peewee.py", line 2094, in create_table
db = cls._meta.database
AttributeError: type object 'Person' has no attribute '_meta'

peeweeのインストールに問題がありますか?この問題を解決するにはどうすればよいですか?

4

1 に答える 1

5

PeeweeはPython3と互換性がありません。現時点では、Python2でのみ機能します。

表示されるエラーはその結果です。このModelクラスは、Python3で変更されたPython2の手法を使用してメタクラスを定義します。

アップデートバージョン2.1、2013年4月2日リリース、Python3互換性を追加。このパッケージは、Python 2.6、2.7、および3.2以降をサポートするようになりました。

于 2013-03-24T12:33:41.997 に答える