Massimo is doing development on launchpad.net/web2py (google code is just a
mirror for svn users; sort of a backwards compatibility thing).
You could start by doing a blueprint on launchpad;   if you have more to
include, maybe a link to the www.web2pywiki.com

On Thu, Jan 8, 2009 at 4:01 PM, Robin B <[email protected]> wrote:

>
> Should these proposals end up in the google code issues database as
> enhancements?
>
> Robin
>
> On Jan 8, 3:45 pm, "Yarko Tymciurak" <[email protected]> wrote:
> > hehe... I think Robin should send Robin's proposals ;-)
> >
> > On Thu, Jan 8, 2009 at 3:42 PM, Timothy Farrell <[email protected]>
> wrote:
> >
> > > Dude...wait, what?
> >
> > > what proposal?
> >
> > > mdipierro wrote:
> > > > Me too but I need more time to look into details... today is not the
> > > > optimal day. Tim, could you email me your proposals so that it does
> > > > not get list in the list?
> >
> > > > Massimo
> >
> > > > On Jan 8, 2:54 pm, "Yarko Tymciurak" <[email protected]> wrote:
> >
> > > >> Yep, Robin - saw your other post on this.... I'm liking the
> direction
> > > this
> > > >> is going...  thanks!
> > > >> Yarko
> >
> > > >> On Thu, Jan 8, 2009 at 1:36 PM, Robin B <[email protected]> wrote:
> >
> > > >>> Very true.  This is more general than t2, I just dislike adding so
> > > >>> many symbols to the global namespace, so this could be added to a
> > > >>> helpers.* object if it existed.
> >
> > > >>> The reason for this proposal is that currently you cannot import
> > > >>> actions easily:
> >
> > > >>> # in controllers/default.py
> > > >>> from modules.crud import create
> >
> > > >>> The create action will not be found because actions are currently
> > > >>> found with a regex.
> >
> > > >>> Robin
> >
> > > >>> On Jan 8, 1:19 pm, "Yarko Tymciurak" <[email protected]> wrote:
> >
> > > >>>> Let me double check to make sure:
> >
> > > >>>> this behavior -  non-argumented controllers being exposed /
> accessible
> >
> > > >>> from
> >
> > > >>>> a client - is not (only) t2; this is general web2py behavior,
> >
> > > >>>> correct?
> >
> > > >>>> On Thu, Jan 8, 2009 at 1:15 PM, Yarko Tymciurak <
> [email protected]>
> >
> > > >>> wrote:
> >
> > > >>>>> yep - after reading that thread Robin pointed to at the head of
> this
> > > >>>>> thread,  the space behavior definitely looks like an expedient
> > > hack...
> >
> > > >>>>> and reading the response from Massimo there:
> > > >>>>> "If you have
> > > >>>>> function that does not take *arguments* and you still don't want
> to
> > > >>>>> expose it you can also use a trick..."
> >
> > > >>>>> I'm with Robin - forget the "tricks" and be explicit... but, as I
> > > >>>>> suspected, the usual intent is expose no-argument controllers, so
> the
> > > >>>>> exceptional case calls for a decorator, a better name than I
> > > originally
> > > >>>>> posted:
> >
> > > >>>>> @not_exposed
> > > >>>>> def  myfunc():
> > > >>>>>   #blah, blah, ...
> >
> > > >>>>> On Thu, Jan 8, 2009 at 10:55 AM, Robin B <[email protected]>
> wrote:
> >
> > > >>>>>> Massimo,
> >
> > > >>>>>>> Not sure I undestand. This goes in a module? not a model?
> >
> > > >>>>>> The example shows that it can go in either or both.
> >
> > > >>>>>> You could put it in a module and then import it into a
> controller to
> > > >>>>>> import actions into one specific controller.  You could put it
> in a
> > > >>>>>> model to add an action to all controllers.
> >
> > > >>>>>> The first time a controller is requested, the controller is
> exec'ed,
> > > >>>>>> the resulting environment is searched for functions of no args
> that
> > > >>>>>> have the specific attr that was set by the decorator, these
> actions
> > > >>>>>> are merged with the actions found with the regex.  All the
> possible
> > > >>>>>> controller_action.pyc is compiled and stored like usual, now you
> can
> > > >>>>>> call actions that were created in the models or imported from a
> > > module
> > > >>>>>> (crud, resources, admin, stats etc).
> >
> > > >>>>>> Robin
> >
> > > >>>>>> On Jan 8, 7:20 am, mdipierro <[email protected]> wrote:
> >
> > > >>>>>>> Not sure I undestand. This goes in a module? not a model?
> >
> > > >>>>>>> On Jan 8, 12:03 am, Robin B <[email protected]> wrote:
> >
> > > >>>>>>>> Controller functions taking arguments, or functions with an
> extra
> > > >>>>>>>> space like def index (): are hidden:
> >
> > > >>>
> http://groups.google.com/group/web2py/browse_thread/thread/35c15761dc.
> >
> > > >>>>>> ..
> >
> > > >>>>>>>> This is good that you can hide functions somehow, but using
> only a
> > > >>>>>>>> regex to detect controller functions requires people to
> copy-paste
> > > >>>>>>>> common actions into every controller (bad).
> >
> > > >>>>>>>> Could a controller be loaded, and its symbols that are
> functions
> > > >>>>>>>> checked for a tag (attribute) indicating that they are also
> >
> > > >>> exposed.
> >
> > > >>>>>>>> This way you can import actions/functions in the models and in
> the
> > > >>>>>>>> individual controllers.
> >
> > > >>>>>>>> Proposal: continue to use the regex for backwards
> compatibility,
> >
> > > >>> but
> >
> > > >>>>>>>> also expose functions that are explicitly tagged as exposed by
> >
> > > >>> some
> >
> > > >>>>>>>> decorator.
> >
> > > >>>>>>>> Examples:
> >
> > > >>>>>>>> # in models/0.py
> > > >>>>>>>> @T2.decorators.expose
> > > >>>>>>>> def stats():
> > > >>>>>>>>   return 'stats'
> >
> > > >>>>>>>> # in modules/crud.py
> > > >>>>>>>> @T2.decorators.expose
> > > >>>>>>>> def update():
> > > >>>>>>>>   return 'update'
> >
> > > >>>>>>>> # in controllers/posts.py
> > > >>>>>>>> from modules.crud import *
> >
> > > >>>>>>>> It would be fully backwards compatible!
> >
> > > >>>>>>>> Feedback?
> >
> > > >>>>>>>> Robin
> >
> > > --
> > > Timothy Farrell <[email protected]>
> > > Computer Guy
> > > Statewide General Insurance Agency (www.swgen.com)
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to