예제 #1
0
class Person(Model):
    has_many('things', {'features': {
        'via': 'things'
    }}, {'pets': 'Dog.owner'}, 'subscriptions')

    name = Field()
    age = Field.int()
예제 #2
0
class Organization(Model):
    name = Field()
    is_cover = Field.bool(default=False)

    @has_many()
    def admin_memberships3(self):
        return Membership.admins()

    has_many('memberships', {'users': {
        'via': 'memberships'
    }}, {'admin_memberships': {
        'target': 'Membership',
        'scope': 'admins'
    }}, {'admins': {
        'via': 'admin_memberships.user'
    }}, {
        'admin_memberships2': {
            'target': 'Membership',
            'where': lambda m: m.role == 'admin'
        }
    }, {'admins2': {
        'via': 'admin_memberships2.user'
    }}, {'admins3': {
        'via': 'admin_memberships3.user'
    }})
예제 #3
0
class User(Model):
    name = Field()
    has_many('memberships', {'organizations': {
        'via': 'memberships'
    }}, {
        'cover_orgs': {
            'via': 'memberships.organization',
            'where': lambda m: m.is_cover == True
        }
    })
예제 #4
0
class Post(Model):
    belongs_to('user')
    has_many('comments')

    title = Field()
    text = Field.text()
    date = Field.datetime()

    default_values = {'user': lambda: session.auth.user.id, 'date': now}
    validation = {'title': {'presence': True}, 'text': {'presence': True}}
    fields_rw = {'user': False, 'date': False}
예제 #5
0
class User(AuthUser):
    tablename = 'auth_users'

    avatar = Field.upload(autodelete=True)
    email = Field.string(length=255)

    has_many(
        {'suscripciones': 'Suscripcion.user'},
        {'posts': 'Post.user'},
    )

    default_vales = {}

    validation = {
        'email': {
            'is': 'email'
        },
    }

    form_labels = {
        'email': 'Correo Electrónico',
        'password': '******',
        'first_name': 'Nombre',
        'last_name': 'Apellido',
    }

    fields_rw = {}

    rest_rw = {
        # 'id': True,
    }

    @rowattr('nombre_completo')
    def _nombre_completo(self, row):
        return '%s %s' % (row.last_name.capitalize()
                          or '', row.first_name.capitalize() or '')
예제 #6
0
파일: bloggy.py 프로젝트: safarisapp/emmett
class User(AuthUser):
    # will create "auth_user" table and groups/permissions ones
    has_many('posts', 'comments')
예제 #7
0
class User(AuthUser):
    has_many('things')
    gender = Field()
예제 #8
0
class Person(Model):
    has_many('things')

    name = Field(validation={'empty': False})
    surname = Field(validation={'presence': True})
예제 #9
0
class Zoo(Model):
    has_many('animals', 'elephants', {'mice': {'via': 'elephants.mouse'}})
    name = Field()
예제 #10
0
class Mouse(Model):
    tablename = "mice"
    has_many('elephants')
    name = Field()
예제 #11
0
class Patient(Model):
    has_many('appointments', {'doctors': {'via': 'appointments'}})
    name = Field()
예제 #12
0
class Doctor(Model):
    has_many('appointments', {'patients': {'via': 'appointments'}})
    name = Field()
예제 #13
0
class Thing(Model):
    belongs_to('person')
    has_many('features')

    name = Field()
    color = Field()