Python pyramid.view.view_config() Examples
The following are 3
code examples of pyramid.view.view_config().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
pyramid.view
, or try the search function
.
Example #1
Source File: common.py From janus-cloud with GNU Affero General Public License v3.0 | 6 votes |
def __init__(self, **settings): method = self.__class__.__name__.split('_')[0].upper() super(_rest_view, self).__init__(request_method=method, **settings) # add CORS OPTIONS method support for registered REST view route_name = settings['route_name'] if route_name in self.cors_route: self.cors_route[route_name].add_method(method) return handler = PrefligthHandlerFactory(route_name, method) self.cors_route[route_name] = handler view_config(request_method='OPTIONS', route_name=route_name, _depth=1)(handler) # dirty hack # to get caller's module, in order to inject preflight_handler to that module # so when scan configuration, pyramid will pick OPTIONS for that route module = inspect.getmodule(inspect.getouterframes(inspect.currentframe())[0][0].f_back) setattr(module, 'preflight_'+route_name, handler)
Example #2
Source File: server.py From channelstream with BSD 3-Clause "New" or "Revised" License | 5 votes |
def shared_messages(request): server_state = get_state() schema = schemas.MessageBodySchema(context={"request": request}, many=True) data = schema.load(request.json_body) data = [m for m in data if m.get("channel") or m.get("pm_users")] for msg in data: gevent.spawn(operations.pass_message, msg, server_state.stats) return list(data) # prepare v1 version # @view_config(route_name="api_v1_messages", request_method="POST", renderer="json")
Example #3
Source File: viewsUser.py From muesli with GNU General Public License v3.0 | 5 votes |
def api_login(request): user = request.db.query(models.User).filter_by( email=request.POST['email'].strip(), password=sha1(request.POST['password'].encode('utf-8')).hexdigest() ).first() exp = datetime.timedelta(days=muesli.config["api"]["KEY_EXPIRATION"]) token = models.BearerToken(client="Personal Token", user=user, description="Requested from API", expires=datetime.datetime.utcnow()+exp ) request.db.add(token) request.db.flush() jwt_token = request.create_jwt_token(user.id, admin=(user.is_admin), jti=token.id, expiration=exp) request.db.commit() if user: return { 'result': 'ok', 'token': jwt_token } return {'result': 'error'} # Only for testing purposes. If it is decided that this should be implemented # the function needs to be changed to work similar to api_login #@view_config(route_name='api_login', renderer='json', request_method='GET') #def refresh(request): # user = request.db.query(models.User).get(request.authenticated_userid) # if user: # return { # 'result': 'ok', # 'token': request.create_jwt_token(user.id, admin=(user.is_admin)) # } # return {'result': 'error'}