Пример #1
0
 def create(cls, form=None, url=None, type=1, **kw):
     model = cls('registration',
                 form=form,
                 url=url,
                 fields=[RestField('user', model='users')],
                 **kw)
     model.type = type
     return model
Пример #2
0
    def create(cls,
               exclude=None,
               fields=None,
               id_field='username',
               repr_field='full_name',
               authenticated=False,
               **kw):
        exclude = exclude or ('password', )
        fields = list(fields or ())
        fields.extend((full_name, RestField('groups', model='groups')))

        model = cls('user',
                    id_field=id_field,
                    repr_field=repr_field,
                    exclude=exclude,
                    fields=fields,
                    **kw)
        model.authenticated = authenticated
        return model
Пример #3
0
class CRUDTask(CRUD):
    model = RestModel(
        'task',
        'task',
        'task',
        fields=[RestField('assigned', model='people', field='assigned_id')])
Пример #4
0
 def create(cls):
     return cls('token',
                form='create-token',
                fields=[RestField('user', field='user_id', model='users')])
Пример #5
0
class UserCRUD(users.UserCRUD):
    """Override user CRUD for testing"""
    model = users.UserModel.create(updateform='user',
                                   fields=[RestField('email', type='email')])
Пример #6
0
 def test_rest_column(self):
     col = RestField('bla', field='bla')
     info = col.tojson()
     self.assertEqual(info['name'], 'bla')
     self.assertEqual(info['field'], 'bla')
Пример #7
0
from pulsar import Http401, MethodNotAllowed

from lux.core import route, GET_HEAD
from lux.extensions.rest import RestRouter, RestField, user_permissions
from lux.forms import get_form_class

from . import RestModel

full_name = RestField('full_name',
                      displayName='Name',
                      field=('first_name', 'last_name', 'username', 'email'))


class UserModel(RestModel):
    authenticated = False

    @classmethod
    def create(cls,
               exclude=None,
               fields=None,
               id_field='username',
               repr_field='full_name',
               authenticated=False,
               **kw):
        exclude = exclude or ('password', )
        fields = list(fields or ())
        fields.extend((full_name, RestField('groups', model='groups')))

        model = cls('user',
                    id_field=id_field,
                    repr_field=repr_field,
Пример #8
0
import os

from pulsar import Http404

from lux.core import cached
from lux.extensions.rest import DictModel, RestField, Query
from lux.utils.files import skipfile
from lux.utils.data import as_tuple

from .contents import get_reader


FIELDS = [
    RestField('priority', sortable=True, type='int'),
    RestField('order', sortable=True, type='int'),
    RestField('slug', sortable=True),
    RestField('group', sortable=True),
    RestField('title'),
    RestField('description'),
    RestField('body')
]


class ContentModel(DictModel):
    '''A Content model with file-system backend

    This model provide read-only operations
    '''
    def __init__(self, location, name='content', fields=None, ext='md', **kw):
        if not os.path.isdir(location):
            os.makedirs(location)
Пример #9
0
class GroupCRUD(CRUD):
    model = RestModel('group',
                      'create-group',
                      'group',
                      id_field='name',
                      fields=[RestField('permissions', model='permissions')])
Пример #10
0
 def test_rest_column(self):
     col = RestField('bla', field='bla')
     info = col.tojson()
     self.assertEqual(info['name'], 'bla')
     self.assertEqual(info['field'], 'bla')
Пример #11
0
class MailingListCRUD(CRUD):
    model = RestModel(
        'mailinglist',
        form='mailing-list',
        url='mailinglist',
        fields=[RestField('user', field='user_id', model='users')])