@base.RequireCapability(constants.PERMISSIONS.EDIT_ALERTS) def post(self, scope, platform): scope, platform = self._ValidateRouteParams(scope, platform) # Verify that the alert payload has the minimum requirements before going # any further. for request_arg in ('message', 'start_date', 'severity'): if not self.request.get(request_arg).strip(): self.abort(httplib.BAD_REQUEST, 'Missing request argument: %s' % request_arg) alert_db.Alert.Insert(message=self.request.get('message'), details=self.request.get('details'), start_date=self._ParseRequestDate('start_date'), end_date=self._ParseRequestDate('end_date'), platform=platform, scope=scope, severity=self.request.get('severity')) # Expire the memcache key in case the newly-created Alert which should take # priority over a current one. We don't need to reset the key, the next # relevant GET request should take care of it automatically. memcache.delete(_CreateMemcacheKey(scope, platform)) # The Webapp2 routes defined for these handlers. ROUTES = routes.PathPrefixRoute('/alerts', [ webapp2.Route('/<scope>/<platform>', handler=AlertHandler), ])
from login import * from dashboard import Dashboard from createProject import CreateProject from runProject import RunProject from resultDetail import ResultDetail from newUser import NewUser config = { 'webapp2_extras.auth': { 'user_model': 'authModel.User', 'user_attributes': ['name'] }, 'webapp2_extras.sessions': { 'secret_key': 'YOUR_SECRET_KEY' } } # [START app] app = webapp2.WSGIApplication( [('/', LoginPage), ('/logout', LogoutPage), ('/profile', UserProfile), ('/forgot', ForgotPassword), ('/register', NewUser), ('/dashboard', Dashboard), ('/create', CreateProject), ('/run', RunProject), ('/details', ResultDetail), webapp2.Route('/<user_id:\d+>-<signup_token:.+>', handler=VerificationHandler, name='verification')], debug=True, config=config) # [END app]
task = Todo().get_by_id(int(delete_id)) task.key.delete() return self.redirect_to("home") class EditHandler(BaseHandler): def get(self, edit_id): task = Todo().get_by_id(int(edit_id)) params = {"task": task} return self.render_template("edit.html", params) def post(self, edit_id): done = self.request.get("done") task = Todo().get_by_id(int(edit_id)) task.task = self.request.get("task") if done == "1": task.done = True else: task.done = False task.put() params = {"task": task, "done": done} return self.render_template("edit.html", params) app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler, name="home"), webapp2.Route('/delete/<delete_id:\d+>', DeleteHandler), webapp2.Route('/edit/<edit_id:\d+>', EditHandler), ], debug=True)
# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Dispatches requests to request handler classes.""" import webapp2 from dashboard.pinpoint import handlers _URL_MAPPING = [ # Public API. webapp2.Route(r'/api/config', handlers.Config), webapp2.Route(r'/api/generate-results2/<job_id>', handlers.Results2Generator), webapp2.Route(r'/api/isolate', handlers.Isolate), webapp2.Route(r'/api/isolate/<builder_name>/<git_hash>/<target>', handlers.Isolate), webapp2.Route(r'/api/job/<job_id>', handlers.Job), webapp2.Route(r'/api/jobs', handlers.Jobs), webapp2.Route(r'/api/migrate', handlers.Migrate), webapp2.Route(r'/api/new', handlers.New), webapp2.Route(r'/api/results2/<job_id>', handlers.Results2), webapp2.Route(r'/api/stats', handlers.Stats), # Used internally by Pinpoint. Not accessible from the public API. webapp2.Route(r'/api/run/<job_id>', handlers.Run), webapp2.Route(r'/cron/isolate-cleanup', handlers.IsolateCleanup), webapp2.Route(r'/cron/refresh-jobs', handlers.RefreshJobs), ] APP = webapp2.WSGIApplication(_URL_MAPPING, debug=False)
#!/usr/bin/env python import os import jinja2 import webapp2 import sys from handlers.BaseHandler import BaseHandler from handlers.MainHandler import MainHandler from handlers.CookieHandler import CookieAlertHandler from handlers.ObjaveHandler import DodajObjavoHandler, PoglejObjavoHandler, DeleteObjavoHandler, MojiKomentarjiHandler from workers.MailWorker import MailWorker app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler, name="main-page"), webapp2.Route('/set-cookie', CookieAlertHandler, name="set-cookie"), webapp2.Route('/add', DodajObjavoHandler, name="dodaj_objavo"), webapp2.Route( r'/objava/<id:\d+>', PoglejObjavoHandler, name="poglej_objavo"), webapp2.Route("/task/send-comment-mail", MailWorker), webapp2.Route(r'/objava/delete/<id:\d+>', DeleteObjavoHandler), webapp2.Route("/mycomments", MojiKomentarjiHandler) ], debug=True)
self.auth.unset_session() self.redirect(self.uri_for('home')) config = { 'webapp2_extras.auth': { 'user_model': 'models.User', 'user_attributes': ['name'] }, 'webapp2_extras.sessions': { 'secret_key': 'YOUR_SECRET_KEY' } } app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler, name='home'), webapp2.Route('/home', MainHandler, name='home'), webapp2.Route('/about', AboutHandler, name='about'), webapp2.Route('/trending', TrendingHandler, name='trending'), webapp2.Route('/tip', TipHandler, name='tip'), webapp2.Route('/add_credits', AddCreditsHandler, name='add_credits'), webapp2.Route('/get_logs', LogHandler, name='get_logs'), webapp2.Route('/profile', ProfileHandler, name='profile'), webapp2.Route('/signup', SignupHandler), webapp2.Route('/<type:v|p>/<user_id:\d+>-<signup_token:.+>', handler=VerificationHandler, name='verification'), webapp2.Route('/password', SetPasswordHandler), webapp2.Route('/forgot', ForgotPasswordHandler, name='forgot'), webapp2.Route('/login', LoginHandler, name='login'), webapp2.Route('/logout', LogoutHandler, name='logout'),
# logging.info(title) if blog_id == None: #find blog_id; if not there, return error error = "No post associated with id." self.response.write(error) else: self.response.write(blog_id.title) self.response.write("<html><body><br><br></body></html>") self.response.write(blog_id.content) #add something with blog_id # def single_new_post(self, title="",content=""): # self.render("single_new_post.html", title=title, content=content) # self.single_new_post() # # def post(self): # title = self.request.get("title") # content = self.request.get("content") # self.response.write(title, content) app = webapp2.WSGIApplication( [ ('/', MainHandler), #redirects to mainpage ('/blog', MainBlog), ('/newpost', Newpost), webapp2.Route( '/blog/<id:\d+>', ViewPostHandler) #says our route expects URLpath that starts ], debug=True) #with /blog/ & ends with one or more digits
params = {"podatki_iz_baze": Sporocilo.query().fetch()} return self.render_template("baza.html", params=params) class VnosHandler(BaseHandler): def post(self): tisto_kar_smo_vnseli_v_vnos = self.request.get('vnos') tisto_kar_smo_vnseli_v_avtor = self.request.get('avtor') nov_vnos = Sporocilo(vnos=tisto_kar_smo_vnseli_v_vnos, avtor=tisto_kar_smo_vnseli_v_avtor) nov_vnos.put() self.redirect("/baza") def get(self): params = {} return self.render_template("vnos-v-bazo.html", params=params) app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler), webapp2.Route('/blog', BlogHandler), webapp2.Route('/kalkulator', KalkulatorHandler), webapp2.Route('/baza', BazaHandler), webapp2.Route('/vnos_v_bazo', VnosHandler), ], debug=True)
prefix = { 'elements': '/element/', 'collections': '/collection/', 'authors': '/author/', }[kind] parsed_url = urlparse(self.request.url) host = '%s://%s' % (parsed_url.scheme, parsed_url.netloc) self.response.headers['Content-Type'] = 'text/plain' self.response.write('\n'.join(['%s%s%s' % (host, prefix, page) for page in sitemap.pages])) # pylint: disable=invalid-name app = webapp2.WSGIApplication([ webapp2.Route(r'/api/publish/<library:([^\/]+|@?[^\/]+\/[^\/]+)>', handler=PublishLibrary), webapp2.Route(r'/api/preview', handler=RegisterPreview), webapp2.Route(r'/api/preview-event', handler=PreviewEvent), webapp2.Route(r'/api/preview-commit', handler=PreviewCommit), webapp2.Route(r'/api/meta/<author>', handler=GetAuthor), webapp2.Route(r'/api/meta/<owner>/<repo>', handler=GetMetadata), webapp2.Route(r'/api/meta/<owner>/<repo>/<ver>', handler=GetMetadata), webapp2.Route(r'/api/docs/<owner>/<repo>', handler=GetDocs), webapp2.Route(r'/api/docs/<owner>/<repo>/<ver>', handler=GetDocs), webapp2.Route(r'/api/page/<owner>/<repo>/<ver>/<path:.*>', handler=GetPage), webapp2.Route(r'/api/dependencies/<owner>/<repo>', handler=GetDependencies), webapp2.Route(r'/api/dependencies/<owner>/<repo>/<version>', handler=GetDependencies), webapp2.Route(r'/api/collections/<owner>/<repo>', handler=GetCollections), webapp2.Route(r'/api/collections/<owner>/<repo>/<version>', handler=GetCollections), webapp2.Route(r'/api/search/<terms>', handler=SearchContents), webapp2.Route(r'/api/sitemap/<kind>.txt', handler=GetSitemap),
for temp in booking_cache_remove: booking_cache.remove(temp) config = { 'webapp2_extras.auth': { 'user_model': 'models.User', 'user_attributes': ['first_name', 'accounType', 'email_address'] }, 'webapp2_extras.sessions': { 'secret_key': 'YOUR_SECRET_KEY' } } app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler, name='home'), webapp2.Route('/signup', SignupHandler), webapp2.Route('/<type:v|p>/<user_id:\d+>-<signup_token:.+>', handler=VerificationHandler, name='verification'), webapp2.Route('/password', SetPasswordHandler), webapp2.Route('/login', LoginHandler, name='login'), webapp2.Route('/logout', LogoutHandler, name='logout'), webapp2.Route('/forgot', ForgotPasswordHandler, name='forgot'), webapp2.Route('/verifyemail', VerifyHandler, name='verifyemail'), webapp2.Route('/setting', SettingHandler), webapp2.Route('/changepwd', ChangepwdHandler), webapp2.Route('/schedulebooking', QueryScheduleHandler), webapp2.Route('/jsonrecommend', recommendScheduleHandler), webapp2.Route('/admin/schedule', AdminScheduleHandler), webapp2.Route('/scheduleconfirmation', ScheduleHandler),
class NewPost(Handler): def get(self, title="", body="", errmsg=""): t = jinja_env.get_template("newpost.html") content = t.render(title=title, body=body, errmsg=errmsg) self.response.write(content) def post(self): title = self.request.get("title") body = self.request.get("body") title_escaped = cgi.escape(title, quote=True) body_escaped = cgi.escape(body, quote=True) if (title.strip() != "" and body.strip() != ""): blog = Blog(title=title_escaped, body=body_escaped) blog.put() t = jinja_env.get_template("post_confirm.html") content = t.render(title=title_escaped, body=body_escaped) self.response.write(content) else: errmsg = "You should have a TITLE AND BODY!" self.get(title=title, body=body, errmsg=errmsg) app = webapp2.WSGIApplication([('/', Index), ('/blog', BlogList), webapp2.Route('/blog/<id:\d+>', ViewPost), ('/newpost', NewPost), ('/delete', Delete)], debug=True)
if params is None: params = {} template = jinja_env.get_template(view_filename) return self.response.out.write(template.render(params)) class MainHandler(BaseHandler): def get(self): return self.render_template("osnovna-stran.html") class LotoHandler(BaseHandler): def get(self): loto_listek = [] for i in range(8): while True: nakljucno_stevilo = random.randint(1, 39) if nakljucno_stevilo not in loto_listek: break loto_listek.append(nakljucno_stevilo) info = {"listek": loto_listek} return self.render_template("loto.html", info) app = webapp2.WSGIApplication( [webapp2.Route('/', MainHandler), webapp2.Route('/loto', LotoHandler)], debug=True)
params = {} template = jinja_env.get_template(view_filename) return self.response.out.write(template.render(params)) class MainHandler(BaseHandler): def get(self): return self.print_template() def post(self): return self.print_template() def print_template(self): user = users.get_current_user() if user: is_user = True user_url = users.create_logout_url('/') else: is_user = False user_url = users.create_login_url('/') params = { "user": user, "is_user": is_user, "user_url": user_url } return self.render_template("hello.html", params) app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler), ], debug=True)
class TestGivePlayerEquipment(webapp2.RequestHandler): def post(self): testGivePlayerEquipment(self.request.get('player_id')) class TestPutCampOnSpot(webapp2.RequestHandler): def post(self): testPutCampOnSpot(self.request.get('player_id'), self.request.get('map_tile_id'), self.request.get('tile_resource_id')) app = webapp2.WSGIApplication( [ webapp2.Route( r'/admin/login', handler=AdminLoginHandler, name='admin-login'), webapp2.Route( r'/admin/turn', handler=AdminTurnHandler, name='admin-turn'), webapp2.Route(r'/admin/make-map', handler=TestMapGeneration, name='admin-make-map'), webapp2.Route(r'/admin/give-player-resource-test', handler=TestGivePlayerResource, name='give-player-resource-test'), #TODO: remove webapp2.Route(r'/admin/give-player-equipment-test', handler=TestGivePlayerEquipment, name='give-player-equipment-test'), #TODO: remove webapp2.Route(r'/admin/put-camp-on-spot-test', handler=TestPutCampOnSpot), #TODO REMOVE ], debug=True)
def get_routes( self ): return [ webapp2.Route( '/admin/apps', HandlerApps, name = 'apps' ), webapp2.Route( '/appdatastores', HandlerAppDataStores, name = 'appdatastores' ), webapp2.Route( '/restapi', HandlerPageRestAPI, name = 'restapi' ), webapp2.Route( '/api/v1/connect', HandlerAPIv1Connect, name = 'apiv1connect' ), webapp2.Route( '/api/v1/logout', HandlerAPIv1Logout, name = 'apiv1logout' ), webapp2.Route( '/api/v1/authvalidate', HandlerAPIv1AuthValidate, name = 'apiv1authvalidate' ), webapp2.Route( '/api/v1/ownsproducts', HandlerAPIv1OwnsProducts, name = 'apiv1ownsproducts' ), webapp2.Route( '/api/v1/friends', HandlerAPIv1Friends, name = 'apiv1friends' ), webapp2.Route( '/api/v1/datastore/set', HandlerAPIv1DataStoreSet, name = 'apiv1datastoreset' ), webapp2.Route( '/api/v1/datastore/get', HandlerAPIv1DataStoreGet, name = 'apiv1datastoreget' ), webapp2.Route( '/api/v1/datastore/getlist', HandlerAPIv1DataStoreGetList, name = 'apiv1datastoregetlist' ), webapp2.Route( '/api/v1/datastore/del', HandlerAPIv1DataStoreDel, name = 'apiv1datastoredel' ), ]
class PostPage(Handler): def get(self, post_id): post = get_post(post_id) if post: self.render("post.html", post=post) else: self.error(404) class FlushCache(Handler): def get(self): memcache.flush_all() next_url = self.get_referer() self.redirect(next_url) class Portfolio(Handler): def get(self): self.render('portfolio.html') app = webapp2.WSGIApplication([ webapp2.Route('/', handler=MainPage), webapp2.Route('/blog', handler=BlogFront), webapp2.Route('/newpost', handler=NewPost), webapp2.Route(r'/blog/<post_id:[A-Za-z0-9_-]+>', handler=PostPage), webapp2.Route('/flush', handler=FlushCache), webapp2.Route('/portfolio', handler=Portfolio), ], debug=True)
import json import logging import os import webapp2 from google.appengine.ext import ndb from google.appengine.ext.webapp.util import run_wsgi_app from jinja2.filters import do_pprint from vertnet.service import github from webapp2_extras import jinja2 IS_DEV = os.environ.get('SERVER_SOFTWARE', '').startswith('Development') # App routes: routes = [ webapp2.Route(r'/', handler='app.AppHandler:home', name='home'), webapp2.Route(r'/sitemap.xml', handler='app.AppHandler:sitemap', name='sitemap'), webapp2.Route(r'/search', handler='app.AppHandler:search', name='explore'), webapp2.Route(r'/about', handler='app.AppHandler:about', name='about'), webapp2.Route(r'/publishers', handler='app.AppHandler:publishers', name='publishers'), webapp2.Route( r'/o/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>', handler='app.AppHandler:occ', name='occ'), webapp2.Route(r'/p/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>', handler='app.AppHandler:pub', name='pub'),
def get(self): self.render_index() def post(self): title = self.request.get("title") body = self.request.get("body") if title and body: a = Blog(title=title, body=body) a.put() self.redirect("/blog/" + str(a.key().id())) else: error = "we need both title and body." self.render_index(title, body, error) class ViewPostHandler(Handler): def get(self, id): post = Blog.get_by_id(int(id)) if post: self.render("viewpost.html", post=post) else: error = "The id not found." self.render("viewpost.html", error=error) app = webapp2.WSGIApplication( [('/blog', MainHandler), ('/newpost', PostBlog), webapp2.Route('/blog/<id:\d+>', ViewPostHandler)], debug=True)
def get(self, message_id): message = Message().get_by_id(int(message_id)) return self.render_template("edit.html", params={"message": message}) def post(self, message_id): message = Message.get_by_id(int(message_id)) message_text = self.request.get("message") message.message_text = message_text message.put() return self.redirect_to("message-list") class DeleteHandler(BaseHandler): def get(self, message_id): message = Message().get_by_id(int(message_id)) return self.render_template("delete.html", params={"message": message}) def post(self, message_id): message = Message.get_by_id(int(message_id)) message.key.delete() return self.redirect_to("message-list") app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler), webapp2.Route('/messages', MessageHandler, name="message-list"), webapp2.Route('/messages/<message_id:\d+>/edit', EditHandler), webapp2.Route('/messages/<message_id:\d+>/delete', DeleteHandler) ], debug=True)
file.close() # --- routes = [] # --- if 'permanents' in config['appengine']: for route, url in config['appengine']['permanents'].iteritems(): routes.append( webapp2.Route(route, webapp2.RedirectHandler, defaults={ '_code': 301, '_uri': url })) # --- if 'redirects' in config['appengine']: for route, url in config['appengine']['redirects'].iteritems(): routes.append( webapp2.Route(route, webapp2.RedirectHandler, defaults={ '_code': 302, '_uri': url }))
server.backup() def grouper(n, iterable): it = iter(iterable) while True: chunk = list(itertools.islice(it, n)) if not chunk: return yield chunk class DeleteExpiredTokens(webapp2.RequestHandler): @ndb.toplevel def get(self): now = datetime.datetime.utcnow() token_query = Token.query_expired(now) for keys in grouper(50, token_query.iter(keys_only=True)): ndb.delete_multi_async(keys) application = webapp2.WSGIApplication([ webapp2.Route( '/cron/server/status', ServerStatusHandler, name='cron_server_status'), webapp2.Route( '/cron/server/backup', ServerBackupHandler, name='cron_server_backup'), webapp2.Route( '/cron/oauth/clean', DeleteExpiredTokens, name='cron_oauth_clean') ], debug=not ON_SERVER)
model = Event parent = GroupHandler ### ### Main routes for api ### api_routes = APIRoutes(prefix='/api/', root=RootHandler) ### ### Setup extra routes ### routes = list(api_routes.routes) routes += [ webapp2.Route('/api/store/', StoreHandler), webapp2.Route('/accounts/signin/', SigninHandler), webapp2.Route('/accounts/signup/', SignupHandler), webapp2.Route('/accounts/signout/', SignoutHandler), webapp2.Route('/accounts/profile/', ProfileHandler), webapp2.Route('/accounts/namespace/', NamespaceHandler), webapp2.Route('/<:.*>', IndexHandler), ] ### ### Application configuration ### config = { 'webapp2_extras.auth': { 'user_model': 'cannula.gae.models.User',
if params is None: params = {} template = jinja_env.get_template(view_filename) return self.response.out.write(template.render(params)) class MainHandler(BaseHandler): def get(self): return self.render_template("glavno mesto.html") def post(self): vnos = self.request.get("vnos") vnos2 = self.request.get("vnos2") vnos3 = self.request.get("vnos3") vnos4 = self.request.get("vnos4") if vnos == "Peking": return self.write("Drži, glavno mesto Kitajske je Peking") if vnos2 == "Toronto": return self.write("Drži, glavno mesto Kanade je Otawa") if vnos3 == "Jakarta": return self.write("Drži, glavno mesto Indonezije je Jakarta") if vnos4 == "Tunis": return self.write("Drži, glavno mesto Tunizije je Tunis") else: return self.write("Napačen vnos") app = webapp2.WSGIApplication([webapp2.Route("/", MainHandler)], debug=True)
#!/usr/bin/env python from handlers.AppUserHandler import AppUserHandler from handlers.MainHandler import MainHandler from handlers.TaskHandler import TaskHandler from handlers.TaskboardHandler import TaskboardHandler import webapp2 from handlers.TaskboardMemberHandler import TaskboardMemberHandler # api routes app = webapp2.WSGIApplication( [ # home page, renders master.html webapp2.Route('/', handler=MainHandler, name='home'), # get all authorised taskboards webapp2.Route(r'/taskboards', handler=TaskboardHandler, name='taskboard_index', handler_method="index", methods=['GET']), # get taskboard by id webapp2.Route(r'/taskboards/<:\d+>', handler=TaskboardHandler, name='taskboard', handler_method="get", methods=['GET']), # save/update taskboard webapp2.Route('/taskboards', handler=TaskboardHandler, name='taskboard_post', handler_method="post", methods=['POST']),
# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Dispatches requests to request handler classes.""" import webapp2 from dashboard.pinpoint import handlers _URL_MAPPING = [ # Public API. webapp2.Route(r'/api/config', handlers.Config), webapp2.Route(r'/api/isolate', handlers.Isolate), webapp2.Route(r'/api/isolate/<builder_name>/<git_hash>/<target>', handlers.Isolate), webapp2.Route(r'/api/job', handlers.Job), webapp2.Route(r'/api/jobs', handlers.Jobs), webapp2.Route(r'/api/login', handlers.Login), webapp2.Route(r'/api/migrate', handlers.Migrate), webapp2.Route(r'/api/new', handlers.New), webapp2.Route(r'/api/stats', handlers.Stats), # Used internally by Pinpoint. Not accessible from the public API. webapp2.Route(r'/api/run/<job_id>', handlers.Run), webapp2.Route(r'/results2/<job_id>', handlers.Results2), ] APP = webapp2.WSGIApplication(_URL_MAPPING, debug=False)
class MainHandler(webapp2.RequestHandler): def get(self): return self.response.write('Hello World!') class ByeHandler(webapp2.RequestHandler): def get(self): return self.response.write('Bye') class RandomHandler(webapp2.RequestHandler): def get(self): random_number = random.randint(1, 6) return self.response.write('Random number: ' + str(random_number)) class DateHandler(webapp2.RequestHandler): def get(self): date = time.strftime('%d.%m.%Y') return self.response.write(date) app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler), webapp2.Route('/hello', MainHandler), webapp2.Route('/bye', ByeHandler), webapp2.Route('/random', RandomHandler), webapp2.Route('/date', DateHandler) ], debug=True)
class Constant(base.BaseHandler): """Get the value for a constant.""" @property def RequestCounter(self): return monitoring.constant_requests @base.RequireCapability(constants.PERMISSIONS.VIEW_CONSTANTS) @handlers.RecordRequest def get(self, constant): # pylint: disable=g-bad-name """Get handler for single setting. NOTE: The `constant` URI parameter will be properly parsed if it contains special URI characters (e.g. underscores). Args: constant: str. The name of the constant being requested. """ logging.debug('Constants handler get method called.') if constant.lower() == 'userrole': constant_value = {'UserRole': constants.USER_ROLE.SET_ALL} self.respond_json(constant_value) else: logging.debug('Unknown constant requested: %s', constant) self.abort(httplib.NOT_FOUND, explanation='Unknown constant requested') # The Webapp2 routes defined for these handlers. ROUTES = webapp2.Route('/constants/<constant>', handler=Constant)
"""Deletes all data older than one hour""" keepForMinutes = 60 def get(self): deleteBeforeDate = datetime.datetime.now() - datetime.timedelta( minutes=self.keepForMinutes) for blob in blobstore.BlobInfo.gql('WHERE creation < :1', deleteBeforeDate): blob.delete() ndb.delete_multi( Task.gql('WHERE date < :1', deleteBeforeDate).fetch(keys_only=True)) app = webapp2.WSGIApplication([ webapp2.Route('/', HomeHandler, 'home'), webapp2.Route('/upload', ApkUploadHandler, 'apkUpload'), webapp2.Route('/plugin', PluginHandler, 'plugin'), webapp2.Route('/plugin/blob/<blobKey>', PluginHandler, 'blobPlugin', handler_method='getBlob'), webapp2.Route('/plugin/app/<appId>', PluginHandler, 'appPlugin', handler_method='getApp'), webapp2.Route('/plugin/install', PluginInstallHandler, 'installPlugin'), webapp2.Route('/ajax/upload', AjaxUploadHandler, 'ajaxUpload'), webapp2.Route('/ajax/task/start', TaskStartHandler, 'taskStart'), webapp2.Route('/ajax/task/start/blob/<blobKey>', TaskStartHandler,
def post(self): result = self.request.get("some_text") result2 = self.request.get("some_number") if result: self.old_inputs.append(result) else: self.numbers_list.append(str(random.randint(1,100))) return self.render_template("hello.html", params={'old_inputs':self.old_inputs, 'numbers_list': self.numbers_list}) class subsiteHandler(BaseHandler): def get(self): self.render_template("Hello2.html") app = webapp2.WSGIApplication([ webapp2.Route('/', MainHandler), webapp2.Route('/subsite', SubsiteHandler) ], debug=True) def main(): from paste import httpserver httpserver.serve(app, host='127.0.0.1', port='8080') if __name__ == '__main__': main()
import webapp2 # local imports from handlers.main_handler import MainHandler from handlers.cookie_handler import CookieHandler from handlers.topic_handlers import AddTopic, DeleteTopic, TopicDetails from handlers.comment_handlers import UserComments, DeleteComment, CountComments from handlers.subscription_handler import SubscribeLatestTopics from handlers.gallery_handlers import GalleryHandler from workers.mail_worker import MailWorker, MailWorkerTopics from cron.cron import TopicsDeleteCron, NotifyOnLatestTopicsCron, CommentsDeleteCron # url routes app = webapp2.WSGIApplication( [ webapp2.Route('/', MainHandler, name="main-page"), webapp2.Route('/set-cookie', CookieHandler, name="set-cookie"), # topic routes webapp2.Route('/topic/add', AddTopic, name="add-topic"), webapp2.Route( '/topic/delete/<topic_id>', DeleteTopic, name="delete-topic"), webapp2.Route( '/topic/details/<topic_id>', TopicDetails, name="topic-details"), webapp2.Route('/subscribe/latest-topics', SubscribeLatestTopics, name="latest-topics"), webapp2.Route( '/task/send-new-comment-mail', MailWorker, name="mail-worker"), webapp2.Route('/task/send-latest-topics-mail', MailWorkerTopics, name="mail-worker-topics"),