コード例 #1
0
ファイル: fields.py プロジェクト: kdart/pycopia3
        else:
            return int(value)

    def python_value(self, value):
        return None if value is None else timedelta(seconds=value)


class MACAddress:
    def __init__(self, mac):
        self.mac = str(mac)

    def __str__(self):
        return self.mac


PostgresqlDatabase.register_fields({
    'datetime_tz': 'timestamp with time zone',
    'macaddr': 'macaddr',
    'inet': 'inet',
    'cidr': 'cidr',
})


SqliteDatabase.register_fields({
    'datetime_tz': 'DATETIME',
    "inet": "VARCHAR(32)",
    "cidr": "VARCHAR(32)",
    "macaddr": "VARCHAR(32)",
})

コード例 #2
0
ファイル: fields.py プロジェクト: ei-grad/muffin-peewee
"""Custom fields."""
import ujson
from cached_property import cached_property
from peewee import Field, PostgresqlDatabase, Proxy

try:
    from playhouse.postgres_ext import Json, JsonLookup
    PostgresqlDatabase.register_fields({'json': 'json'})
except:
    Json = JsonLookup = None


class JSONField(Field):
    """Implement JSON field."""
    def __init__(self, dumps=None, loads=None, *args, **kwargs):
        """Initialize the serializer."""
        self.dumps = dumps or ujson.dumps
        self.loads = loads or ujson.loads
        super(JSONField, self).__init__(*args, **kwargs)

    @cached_property
    def db_field(self):
        """Return database field type."""
        database = self.get_database()
        if isinstance(database, Proxy):
            database = database.obj
        if Json and isinstance(database, PostgresqlDatabase):
            return 'json'
        return 'text'

    def db_value(self, value):
コード例 #3
0
ファイル: fields.py プロジェクト: ei-grad/muffin-peewee
"""Custom fields."""
import ujson
from cached_property import cached_property
from peewee import Field, PostgresqlDatabase, Proxy


try:
    from playhouse.postgres_ext import Json, JsonLookup
    PostgresqlDatabase.register_fields({'json': 'json'})
except:
    Json = JsonLookup = None


class JSONField(Field):

    """Implement JSON field."""

    def __init__(self, dumps=None, loads=None, *args, **kwargs):
        """Initialize the serializer."""
        self.dumps = dumps or ujson.dumps
        self.loads = loads or ujson.loads
        super(JSONField, self).__init__(*args, **kwargs)

    @cached_property
    def db_field(self):
        """Return database field type."""
        database = self.get_database()
        if isinstance(database, Proxy):
            database = database.obj
        if Json and isinstance(database, PostgresqlDatabase):
            return 'json'
コード例 #4
0
ファイル: models.py プロジェクト: kryskaks/info-desk
# -*- coding: utf8 -*-
import peewee
from peewee import Model, CharField, DateTimeField, ForeignKeyField, Field, PostgresqlDatabase
from config import DATABASE_URL
from playhouse.db_url import connect
from passlib.hash import pbkdf2_sha256
from datetime import datetime

db = connect(DATABASE_URL)
PostgresqlDatabase.register_fields({'password_hash': 'password_hash'})


class _Model(Model):
    class Meta:
        database = db

    def __repr__(self):
        data = ", ".join([
            "%s: %s" % (key, unicode(value).encode('utf8') if value else None)
            for key, value in self._data.items()
        ])
        return "{class_name}: {{ {data} }}".format(
            class_name=self.__class__.__name__, data=data)

    @classmethod
    def get_by_id(cls, id):
        return cls.get(cls.id == id)

    @classmethod
    def get_by_name(cls, name):
        return cls.get(cls.name == name)
コード例 #5
0
ファイル: models.py プロジェクト: kryskaks/info-desk
# -*- coding: utf8 -*-
import peewee
from peewee import Model, CharField, DateTimeField, ForeignKeyField, Field, PostgresqlDatabase
from config import DATABASE_URL
from playhouse.db_url import connect
from passlib.hash import pbkdf2_sha256
from datetime import datetime

db = connect(DATABASE_URL)
PostgresqlDatabase.register_fields({'password_hash': 'password_hash'})

class _Model(Model):
	class Meta:
		database = db

	def __repr__(self):
		data = ", ".join(["%s: %s" % (key, unicode(value).encode('utf8') if value else None) for key, value in self._data.items()])
		return "{class_name}: {{ {data} }}".format(class_name = self.__class__.__name__, data = data)

	@classmethod
	def get_by_id(cls, id):
		return cls.get(cls.id == id)

	@classmethod
	def get_by_name(cls, name):
		return cls.get(cls.name == name)		

class Merchant(_Model):
	w1_checkout_id = CharField()
	name = CharField()
	contacts = CharField()
コード例 #6
0
ファイル: fields.py プロジェクト: feitianyiren/pycopia3
        if isinstance(value, timedelta):
            return value.days * 86400 + value.seconds
        else:
            return int(value)

    def python_value(self, value):
        return None if value is None else timedelta(seconds=value)


class MACAddress:
    def __init__(self, mac):
        self.mac = str(mac)

    def __str__(self):
        return self.mac


PostgresqlDatabase.register_fields({
    'datetime_tz': 'timestamp with time zone',
    'macaddr': 'macaddr',
    'inet': 'inet',
    'cidr': 'cidr',
})

SqliteDatabase.register_fields({
    'datetime_tz': 'DATETIME',
    "inet": "VARCHAR(32)",
    "cidr": "VARCHAR(32)",
    "macaddr": "VARCHAR(32)",
})