awesome, if I had that like 2 weeks ago
use case here:
http://semanticsbml.org/semanticSBML/
add multiple models with Add a BioModel
then press diff/merge/split
a big treetable will appear where in the left you can select elements
to be copied to the new model
it can be one or many elements, i wrote alot of ugly code like
if isinstance(request.vars.element_doc_id,str):
 do foo...
else:
 for edi in request.vars.element_doc_id:
   do foo...

thank you :)

ps sry i will not start to explain what this application does ...

On Aug 21, 2:22 pm, mdipierro <[email protected]> wrote:
> I never needed this but I have no opposition to include them.
> Could you provide a use case?
>  What do other people think?
>
> On Aug 21, 12:27 am, Kevin <[email protected]> wrote:
>
>
>
> > Hi,
>
> > this is a proposed patch to add global functions for accessing values
> > from (in particular) request.vars and friends (any dictionary-like
> > object will work) in a way that (safely) satisfies the assumption that
> > the input vars for a given key are either singletons or lists.
>
> > The functions are rather simple:
>
> > Given the request: /a/b/c?x=abc
> > getfirst(request.vars, 'x') -> 'abc'
> > getlast(request.vars, 'x') -> 'abc'
> > getall(request.vars, 'x') -> ['abc']
>
> > Given the request: /a/b/c?x=abc&x=def
> > getfirst(request.vars, 'x') -> 'abc'
> > getlast(request.vars, 'x') -> 'def'
> > getall(request.vars, 'x') -> ['abc', 'def']
>
> > getall(request.vars, 'y') -> None
> > getall(request.vars, 'y') or [] -> []
>
> > If there is anything like this already, I certainly will retract my
> > suggestion.  The potentially controversial parts are that the
> > functions are defined in gluon.utils (I couldn't find a more logical
> > place to put them, and it makes no difference to me where they end
> > up), and they're loaded into the request environment, just like the
> > html helpers.
>
> > Patch can be found at:http://pastebin.com/g6Vs9PrU
>
> > Background/motivation:
>
> > This function group is inspired by the behavior of <http://
> > pythonpaste.org/webob/reference.html#query-post-variables> and similar
> > functionality that other frameworks provide, and would be particularly
> > useful in cases where the client-side code is not managed by something
> > like web2py's FORM interface -- as of version 1.83.2, web2py prepares
> > a Storage instance such that:
>
> > /a/b/c?x=5 -> request.vars.x == '5'
> > /a/b/c?x=5&x=abc -> request.vars.x == ['5', 'abc']
>
> > This could lead to naive code like the following to fail with some
> > simple request fakery:
>
> > if request.vars.search.upper().startswith('FUZZY'): pass # some real
> > code here
>
> > It's possible that this kind of fakery could also lead to many of the
> > web2py validators failing in common cases (though I haven't looked
> > into that much).
>
> > However, it is often allowable that the first (or last) value passed
> > is authoritative, leading to a more robust system.

Reply via email to