Python pee-wee元子类继承

Python pee-wee元子类继承,python,peewee,Python,Peewee,我正试图在python应用程序中实现peewee,在这样定义我的类时: import datetime import peewee as pw import acme.core as acme adapter = pw.MySQLDatabase( acme.get_config(path='database.db'), host=acme.get_config(path='database.host'), port=int(acme.get_config(path='

我正试图在python应用程序中实现peewee,在这样定义我的类时:

import datetime
import peewee as pw
import acme.core as acme

adapter = pw.MySQLDatabase(
    acme.get_config(path='database.db'),
    host=acme.get_config(path='database.host'),
    port=int(acme.get_config(path='database.port', default=3306)),
    user=acme.get_config(path='database.user'),
    passwd=acme.get_config(path='database.password'))


class Model(pw.Model):
    """
    The base model that will connect the database
    """
    id = pw.PrimaryKeyField()
    created_at = pw.DateTimeField()
    updated_at = pw.DateTimeField(default=datetime.datetime.now)

    class Meta:
        database = adapter


class ServerModule(Model):
    enabled = pw.BooleanField()
    ipaddr = pw.IntegerField()
    port = pw.IntegerField()

    class Meta(Model.Meta):
        db_table = 'module_server'
我得到以下错误:

Traceback (most recent call last):
  File "db.py", line 25, in <module>
    class ServerModule(Model):
  File "db.py", line 33, in ServerModule
    class Meta(Model.Meta):
AttributeError: type object 'Toto' has no attribute 'Meta'
回溯(最近一次呼叫最后一次):
文件“db.py”,第25行,在
类别服务器模块(型号):
ServerModule中第33行的文件“db.py”
类元(Model.Meta):
AttributeError:类型对象“Toto”没有属性“Meta”

我已经尝试过基本的python子类继承,但它不起作用,但在这里,有人可以给我指出正确的方向?

您不需要从父元属性继承元类。Meta.database和其他属性将自动继承。在您的示例中:

import datetime
import peewee as pw
import acme.core as acme

adapter = pw.MySQLDatabase(
    acme.get_config(path='database.db'),
    host=acme.get_config(path='database.host'),
    port=int(acme.get_config(path='database.port', default=3306)),
    user=acme.get_config(path='database.user'),
    passwd=acme.get_config(path='database.password'))


class Model(pw.Model):
    """
    The base model that will connect the database
    """
    id = pw.PrimaryKeyField()
    created_at = pw.DateTimeField()
    updated_at = pw.DateTimeField(default=datetime.datetime.now)

    class Meta:
        database = adapter


class ServerModule(Model):
    enabled = pw.BooleanField()
    ipaddr = pw.IntegerField()
    port = pw.IntegerField()

    class Meta:
        db_table = 'module_server'