My favorites | Sign in
Logo
                
Details: Show all Hide all

Last 30 days

  • Dec 15, 2009
    issue 51 (Custom Error pages) reported by Martin.C.Simpson   -   This isn't a defect, this is more of a feature request. I want (if it doesn't exist already) the ability to have custom error pages and the ability to log errors. How I would like this to happen is have an errors controller, which would allow me to log the error and then output an error template. So, lets say the server returns an error 500, it would call /errors/500, which would do the pre-processing and then output templates/errors/500.html. If that file doesn't exist, just output a standard error. Does this exist? Thanks, Martin
    This isn't a defect, this is more of a feature request. I want (if it doesn't exist already) the ability to have custom error pages and the ability to log errors. How I would like this to happen is have an errors controller, which would allow me to log the error and then output an error template. So, lets say the server returns an error 500, it would call /errors/500, which would do the pre-processing and then output templates/errors/500.html. If that file doesn't exist, just output a standard error. Does this exist? Thanks, Martin
  • Dec 12, 2009
    issue 48 (Validators) commented on by forumx.bb   -   Hello Sorry for asking this question the whole time on IRC but I still don't have an answer. When do you think the new version will be released? And I still think this framework could be really big. But you guys should give it some more love :p. And is there also a function to escape stuff to prevent XSS hacking? Thanks!
    Hello Sorry for asking this question the whole time on IRC but I still don't have an answer. When do you think the new version will be released? And I still think this framework could be really big. But you guys should give it some more love :p. And is there also a function to escape stuff to prevent XSS hacking? Thanks!
  • Dec 07, 2009
    issue 50 (before_action halt execution) commented on by Martin.C.Simpson   -   Brilliant, I couldn't find this anywhere in the documentation. Thanks for that!
    Brilliant, I couldn't find this anywhere in the documentation. Thanks for that!
  • Dec 07, 2009
    issue 50 (before_action halt execution) Status changed by ericsk   -   Do you call `return False` in the before_action() ? While you returned False in before_action, the remain code would not be executed. e.g., ... def before_action(self): # do something self.redirect('/') return False
    Status: Invalid
    Do you call `return False` in the before_action() ? While you returned False in before_action, the remain code would not be executed. e.g., ... def before_action(self): # do something self.redirect('/') return False
    Status: Invalid
  • Dec 07, 2009
    issue 50 (before_action halt execution) commented on by Martin.C.Simpson   -   The reason this is important is, I am doing login validation checks against the before filter and want to redirect a user away from the method before it is invoked if they are not logged in. Thanks Martin
    The reason this is important is, I am doing login validation checks against the before filter and want to redirect a user away from the method before it is invoked if they are not logged in. Thanks Martin
  • Dec 07, 2009
    issue 50 (before_action halt execution) reported by Martin.C.Simpson   -   What steps will reproduce the problem 1. Create a class with a before filter that has self.redirect("/") 2. Create a method that makes a change in the database 3. Invoke that method via your browser What is the expected output? What do you see instead? Expected output is a 301 moved. What actually happens is I see a 301 moved BUT the code on the method still gets executed, rather than being redirected before the method is invoked. What version of the product are you using? On what operating system? 0.3, OSX Please provide any additional information below. Essentially, we just need to be able to tell GAEO to not invoke a method if self.exit() is called in the before filter or something similar. p.s what does it take to become a commiter to this project?
    What steps will reproduce the problem 1. Create a class with a before filter that has self.redirect("/") 2. Create a method that makes a change in the database 3. Invoke that method via your browser What is the expected output? What do you see instead? Expected output is a 301 moved. What actually happens is I see a 301 moved BUT the code on the method still gets executed, rather than being redirected before the method is invoked. What version of the product are you using? On what operating system? 0.3, OSX Please provide any additional information below. Essentially, we just need to be able to tell GAEO to not invoke a method if self.exit() is called in the before filter or something similar. p.s what does it take to become a commiter to this project?
  • Dec 02, 2009
    r240 (Fix Issue #49) committed by ericsk   -   Fix Issue #49
  • Dec 02, 2009
    issue 49 (Session Cookie needs path attribute set.) Status changed by ericsk   -   Thanks for your fix :)
    Status: Fixed
    Thanks for your fix :)
    Status: Fixed
  • Dec 02, 2009
    issue 48 (Validators) Status changed by ericsk   -   Thanks. I'll take it into the next version
    Status: Accepted
    Thanks. I'll take it into the next version
    Status: Accepted
  • Nov 28, 2009
    issue 49 (Session Cookie needs path attribute set.) reported by Martin.C.Simpson   -   What steps will reproduce the problem? 1. Create a controller 2. Create a method on that controller that uses the self.session 3. Create a second controller 4. Try to see the cookie you set in the first controller, on the second controller What is the expected output? What do you see instead? Expected output is that I see the same cookie for both controllers. I see two cookies for each controller as the path is being set relative to the controller. I.e one cookie for /controller1/ and one cookie for /controller2/. What version of the product are you using? On what operating system? Mac OSX 10.6, Gaeo 0.3 Please provide any additional information below. Fix: In gaeo/session/memcache.py line 53: cookie = '%s=%s' % (name, self._id) should read: cookie = '%s=%s; path=/' % (name, self._id)
    What steps will reproduce the problem? 1. Create a controller 2. Create a method on that controller that uses the self.session 3. Create a second controller 4. Try to see the cookie you set in the first controller, on the second controller What is the expected output? What do you see instead? Expected output is that I see the same cookie for both controllers. I see two cookies for each controller as the path is being set relative to the controller. I.e one cookie for /controller1/ and one cookie for /controller2/. What version of the product are you using? On what operating system? Mac OSX 10.6, Gaeo 0.3 Please provide any additional information below. Fix: In gaeo/session/memcache.py line 53: cookie = '%s=%s' % (name, self._id) should read: cookie = '%s=%s; path=/' % (name, self._id)

Earlier this year

  • Nov 26, 2009
    issue 48 (Validators) reported by forumx.bb   -   Hello I think this framework could be really big, it is fun and even easy for noobs like me. Anyway the only thing I am missing right now is validators like: validate_as_email() validate_as_numeric() validate_as_zipcode() validate_size() That stuff, hopefully other people also like this idea! And you should make a kind of book for this framework. I will definitely buy it! Thanks! Pynthon
    Hello I think this framework could be really big, it is fun and even easy for noobs like me. Anyway the only thing I am missing right now is validators like: validate_as_email() validate_as_numeric() validate_as_zipcode() validate_size() That stuff, hopefully other people also like this idea! And you should make a kind of book for this framework. I will definitely buy it! Thanks! Pynthon
  • Oct 11, 2009
    issue 47 (render_to_string() and display parameter in render()) reported by girvanliu   -   Such like rails, I add controller.render_to_string(), and add a parameter that named display=True in controller.render() display parameter may more easier to add caching for page in the future.
    Such like rails, I add controller.render_to_string(), and add a parameter that named display=True in controller.render() display parameter may more easier to add caching for page in the future.
  • Oct 09, 2009
    issue 46 (add autostart for session) reported by girvanliu   -   Each http request occurs two memcache/datastore s' reqeust for memcache, even app never user any session variable. So... 1. You can set self.session_autostart=False in gaeo/__init__.py 2. Then you must set self.session.start() in controller That's all. Attachement is the file I modified
    Each http request occurs two memcache/datastore s' reqeust for memcache, even app never user any session variable. So... 1. You can set self.session_autostart=False in gaeo/__init__.py 2. Then you must set self.session.start() in controller That's all. Attachement is the file I modified
  • Sep 26, 2009
    issue 45 (Routing of '/' ignores specified controller and action) Status changed by ericsk   -   You can use: r.root(controller='search', action='index') to solve this problem.
    Status: Done
    You can use: r.root(controller='search', action='index') to solve this problem.
    Status: Done
  • Sep 26, 2009
    issue 45 (Routing of '/' ignores specified controller and action) commented on by david.c...@jcwebco.com   -   I meant to enter this as a feature request, but didn't see the option. Code works as documented.
    I meant to enter this as a feature request, but didn't see the option. Code works as documented.
  • Sep 26, 2009
    issue 45 (Routing of '/' ignores specified controller and action) reported by david.c...@jcwebco.com   -   What steps will reproduce the problem? 1. create a route for '/' 2. r.connect('/', controller="search", action="index") What is the expected output? What do you see instead? Search controller should be called. Welcome is being called. What version of the product are you using? On what operating system? 0.3 Please provide any additional information below. Tried with wildcard in regex too with same result.
    What steps will reproduce the problem? 1. create a route for '/' 2. r.connect('/', controller="search", action="index") What is the expected output? What do you see instead? Search controller should be called. Welcome is being called. What version of the product are you using? On what operating system? 0.3 Please provide any additional information below. Tried with wildcard in regex too with same result.
  • Sep 07, 2009
    r239 (decode("utf-8") will cause exception while output utf-8 stri...) committed by ericsk   -   decode("utf-8") will cause exception while output utf-8 string
    decode("utf-8") will cause exception while output utf-8 string
  • Aug 30, 2009
    r238 (Create 0.4 branch. ) committed by ericsk   -   Create 0.4 branch.
    Create 0.4 branch.
  • Aug 30, 2009
    gaeo-0.3.zip (GAEO 0.3 Release) file uploaded by ericsk   -  
    Labels: Featured Type-Archive OpSys-All 0.3
    Labels: Featured Type-Archive OpSys-All 0.3
  • Aug 30, 2009
    r237 (Add a `gaeo-0.3` tag. ) committed by ericsk   -   Add a `gaeo-0.3` tag.
    Add a `gaeo-0.3` tag.
  • Aug 30, 2009
    r236 (Merge 0.3 branch into trunk.) committed by ericsk   -   Merge 0.3 branch into trunk.
    Merge 0.3 branch into trunk.
  • Aug 30, 2009
    r235 (modify the CHANGELOG) committed by ericsk   -   modify the CHANGELOG
    modify the CHANGELOG
  • Aug 30, 2009
    r234 (Fix issue #44) committed by ericsk   -   Fix issue #44
  • Aug 30, 2009
    issue 44 (html_part in link_to_function() gets not handle properly) reported by siegfrie...@gmail.com   -   What steps will reproduce the problem? 1. using ajax helper 2. putting more than one html attribute into functions like load_from_remote() like this for m in sortings: t=m+'|Sortieren nach '+m self.menulinks[m] = load_from_remote( title=m, url="/friendster/sortby", target="div1", html={'class':'title', 'title':t}, # this gets not handled data={'sortby':m, 'username':str(username)} ) What is the expected output? What do you see instead? <a class="title" onclick="$('#div1').load('/friendster/sortby', {'username': 'justschlank', 'sortby': 'followers'});;return false;" title="followers|Sortieren nach followers" href="#">followers</a> Solution in gaeo/view/helper/ajax.py line 25 space = ' ' if html_part else '' # OLD: html_part = '%s%s="%s"' % (space, key, val) html_part += '%s%s="%s"' % (space, key, val) logging.info(str(html_part))
    What steps will reproduce the problem? 1. using ajax helper 2. putting more than one html attribute into functions like load_from_remote() like this for m in sortings: t=m+'|Sortieren nach '+m self.menulinks[m] = load_from_remote( title=m, url="/friendster/sortby", target="div1", html={'class':'title', 'title':t}, # this gets not handled data={'sortby':m, 'username':str(username)} ) What is the expected output? What do you see instead? <a class="title" onclick="$('#div1').load('/friendster/sortby', {'username': 'justschlank', 'sortby': 'followers'});;return false;" title="followers|Sortieren nach followers" href="#">followers</a> Solution in gaeo/view/helper/ajax.py line 25 space = ' ' if html_part else '' # OLD: html_part = '%s%s="%s"' % (space, key, val) html_part += '%s%s="%s"' % (space, key, val) logging.info(str(html_part))
  • Aug 30, 2009
    r233 (Add `self.render(file=xxx, content_type='application/zip', f...) committed by ericsk   -   Add `self.render(file=xxx, content_type='application/zip', filename='foo.zip')` option to send a file to client.
    Add `self.render(file=xxx, content_type='application/zip', filename='foo.zip')` option to send a file to client.
  • Aug 13, 2009
    r232 (Enhance utilities) committed by xeonchen   -   Enhance utilities
    Enhance utilities
  • Jul 24, 2009
    issue 35 (Not to include .svn sub-directories in gaeo's directory whil...) Status changed by xeonchen   -  
    Status: Fixed
    Status: Fixed
  • Jul 24, 2009
    r231 (Fix Issue 35. ) committed by xeonchen   -   Fix Issue 35 .
  • Jul 19, 2009
    issue 43 (Scaffold create bug for none-string properties) reported by gasolin   -   What steps will reproduce the problem? 1. set a FloatProperty in scaffold 2. can't create because of type validation error Reason: in controller/create method: if prop in self.params: setattr(r, prop, self.params.get(prop)) only handles the 'String' type.
    What steps will reproduce the problem? 1. set a FloatProperty in scaffold 2. can't create because of type validation error Reason: in controller/create method: if prop in self.params: setattr(r, prop, self.params.get(prop)) only handles the 'String' type.
  • Jul 15, 2009
    UrlRouting (Introduction to the URL routing in GAEO.) Wiki page commented on by cp.ambrosio   -   Simple simple URL routing, i love this. I wish http request methods can be matched too. Our approaches are the same on URL routing, only mine's on PHP. Great work. :D Regards
    Simple simple URL routing, i love this. I wish http request methods can be matched too. Our approaches are the same on URL routing, only mine's on PHP. Great work. :D Regards
  • Jul 03, 2009
    r230 (Re-indent all .py files by PythonTidy. ) committed by xeonchen   -   Re-indent all .py files by PythonTidy.
    Re-indent all .py files by PythonTidy.
  • Jul 03, 2009
    r229 (The content for model/__init__.py seems wrong. Fix it. ) committed by xeonchen   -   The content for model/__init__.py seems wrong. Fix it.
    The content for model/__init__.py seems wrong. Fix it.
  • Jun 09, 2009
    r228 (Add robots.txt file ) committed by ericsk   -   Add robots.txt file
    Add robots.txt file
  • Jun 06, 2009
    FirepythonWithGAEO (Firepython makes it easier to debug GAEO apps) Wiki page edited by kpgarrod
  • Jun 04, 2009
    FirepythonWithGAEO (Firepython makes it easier to debug GAEO apps) Wiki page added by kpgarrod
  • Jun 04, 2009
    issue 42 (python parsing error in ajax.load_from_remote() using data w...) Status changed by ericsk   -   Nice patch, thx.
    Status: Accepted
    Nice patch, thx.
    Status: Accepted
  • Jun 03, 2009
    issue 42 (python parsing error in ajax.load_from_remote() using data w...) reported by Vote300   -   What steps will reproduce the problem? 1. calling ajax.load_from_remote with data parameters like this: self.link1 = load_from_remote(title='Titel', url='/mod/rank', target='div1', html={'class':'htmlclass'}, data={'t1':'hallo', 't2': 'welt'} , callback='alert(\'callback called\')') What is the expected output? What do you see instead? python parsing error What version of the product are you using? On what operating system? 0.3beta Please provide any additional information below. here is a possible fix for the ajax.load_from_remote() def load_from_remote(title, url, target, **opts): """ Create a link that load data from a remote action (jQuery-based) """ # check if the title is specified if not title: raise Exception('Missing title of the link.') # remote action url if not url: raise Exception('Missing remote action.') # load target #id if not target: raise Exception('Missing the id of loaded data target.') data = opts.get('data', '') ### patch starts here if isinstance(data, dict): data = str(data) ### patch ends here callback = opts.get('callback', '') params = data if callback: cbf = 'function(){%s}' % callback params = '%s,%s' % (params, cbf) if params else cbf params = ', ' + params if params else '' script = """$('#%s').load('%s'%s);""" % (target, url, params) return link_to_function(title, script, opts.get('html', {}))
    What steps will reproduce the problem? 1. calling ajax.load_from_remote with data parameters like this: self.link1 = load_from_remote(title='Titel', url='/mod/rank', target='div1', html={'class':'htmlclass'}, data={'t1':'hallo', 't2': 'welt'} , callback='alert(\'callback called\')') What is the expected output? What do you see instead? python parsing error What version of the product are you using? On what operating system? 0.3beta Please provide any additional information below. here is a possible fix for the ajax.load_from_remote() def load_from_remote(title, url, target, **opts): """ Create a link that load data from a remote action (jQuery-based) """ # check if the title is specified if not title: raise Exception('Missing title of the link.') # remote action url if not url: raise Exception('Missing remote action.') # load target #id if not target: raise Exception('Missing the id of loaded data target.') data = opts.get('data', '') ### patch starts here if isinstance(data, dict): data = str(data) ### patch ends here callback = opts.get('callback', '') params = data if callback: cbf = 'function(){%s}' % callback params = '%s,%s' % (params, cbf) if params else cbf params = ', ' + params if params else '' script = """$('#%s').load('%s'%s);""" % (target, url, params) return link_to_function(title, script, opts.get('html', {}))
  • May 28, 2009
    issue 41 (PageController for easier handling of "static" pages) reported by siegfried.hirsch   -   What steps will reproduce the problem? Putting static or pseudo static pages into gaeo needs a controller and a route that can handle this. This is an enhancement in the form of a very simple PageController and a standard route, that could be included in main.py. By including the template/page directory it is very easy to setup the typical static files for an app like about.html faq.html imprint.html Please provide any additional information below. This is the code of the controller to be put into controller/page.py from controller import BaseController class PageController(BaseController): """The Page Controller The following route could be put into main.py r.connect('/display/:page', controller='page', action='index') You could change the default route in main.py Calling a static page is like this http://localhost:8080/display/about or http://localhost:8080/display/faq """ def index(self): if self.params.has_key('page'): p = self.params['page'] self.render(template=p) else: self.render('Page not found')
    What steps will reproduce the problem? Putting static or pseudo static pages into gaeo needs a controller and a route that can handle this. This is an enhancement in the form of a very simple PageController and a standard route, that could be included in main.py. By including the template/page directory it is very easy to setup the typical static files for an app like about.html faq.html imprint.html Please provide any additional information below. This is the code of the controller to be put into controller/page.py from controller import BaseController class PageController(BaseController): """The Page Controller The following route could be put into main.py r.connect('/display/:page', controller='page', action='index') You could change the default route in main.py Calling a static page is like this http://localhost:8080/display/about or http://localhost:8080/display/faq """ def index(self): if self.params.has_key('page'): p = self.params['page'] self.render(template=p) else: self.render('Page not found')
  • May 28, 2009
    issue 40 (BaseModel.put() does not return key) commented on by siegfried.hirsch   -   thanks. yes I forgot to include the key = None ;)
    thanks. yes I forgot to include the key = None ;)
  • May 28, 2009
    issue 40 (BaseModel.put() does not return key) Status changed by ericsk   -   Fixed in revision 225 :)
    Status: Fixed
    Fixed in revision 225 :)
    Status: Fixed
  • May 28, 2009
    r225 (Fix issue #40) committed by ericsk   -   Fix issue #40
  • May 28, 2009
    issue 40 (BaseModel.put() does not return key) changed by ericsk   -  
    Status: Accepted
    Owner: ericsk
    Status: Accepted
    Owner: ericsk
  • May 28, 2009
    issue 40 (BaseModel.put() does not return key) reported by siegfried.hirsch   -   With a model in the form class Story(BaseModel) name = StringProperty(required=True) def before_put(self): return True and using it like this s = Story(name="Hello World") key = s.put() # s.put does _NOT_ return the key Solution is to enhance the put() in BaseModel like this: def put(self): """ Override the db.Model.put() """ result = self.before_put() if result is not False: r = super(BaseModel, self).put() self.after_put() return r
    With a model in the form class Story(BaseModel) name = StringProperty(required=True) def before_put(self): return True and using it like this s = Story(name="Hello World") key = s.put() # s.put does _NOT_ return the key Solution is to enhance the put() in BaseModel like this: def put(self): """ Override the db.Model.put() """ result = self.before_put() if result is not False: r = super(BaseModel, self).put() self.after_put() return r
  • May 22, 2009
    r224 (enhance scaffold) committed by xeonchen   -   enhance scaffold
    enhance scaffold
  • May 21, 2009
    gaeo-0.3-beta.zip (GAEO 0.3 Beta Release) file uploaded by ericsk   -  
    Labels: Featured Type-Archive OpSys-All Beta
    Labels: Featured Type-Archive OpSys-All Beta
  • May 21, 2009
    r223 ([No log message]) committed by ericsk   -   [No log message]
    [No log message]
  • May 20, 2009
    r222 (simplify the to_json method and add from_json method ) committed by ericsk   -   simplify the to_json method and add from_json method
    simplify the to_json method and add from_json method
  • May 19, 2009
    gaeo-0.3-beta.zip (GAEO 0.3 Beta) file uploaded by ericsk   -  
    Labels: Featured Type-Archive OpSys-All Beta
    Labels: Featured Type-Archive OpSys-All Beta
  • May 19, 2009
    r221 (modify the release string) committed by ericsk   -   modify the release string
    modify the release string
  • May 19, 2009
    gaeo-0.3-beta.zip (GAEO 0.3 Beta) file uploaded by ericsk   -  
    Labels: Featured Type-Archive OpSys-All
    Labels: Featured Type-Archive OpSys-All
 
Hosted by Google Code