Re: CorePost - a tiny Flask-style REST microframework for twisted.web

Jacek Furmankiewicz <[email protected]>
Newsgroups gmane.comp.python.twisted.web
Message-ID <CAGDztiFyyYezHXs7fAZrMyXsoKMzdC8XyaLYi-Moc5N2bgvHCQ@mail.gmail.com>
The point is that I more or less blindly copied the Flask API when starting
on this, due to relative lack of experience with Python :-)
I figured their way must be the Pythonic way and went along with it.

I like your suggestion a lot more, it is definitely more OOP and cleaner.
Expect it to be reworked accordingly in the next release

Cheers
Jacek

On Sun, Sep 4, 2011 at 12:01 AM, Glyph Lefkowitz <[email protected]>wrote:

>
> On Sep 3, 2011, at 8:28 PM, Jacek Furmankiewicz wrote:
>
> Any feedback is welcome
>
>
> Hi Jacek,
>
> Great to see more development going into Twisted-based web stuff! :)
>
> However, I do have one question.  Maybe I'm missing something about the way
> Flask does things, but it seems very odd to me that the decorators you're
> using are applied to global functions, rather than instances of an object.
>  For example, instead of:
>
> app = CorePost()
> ...
> @app.route("/validate/<int:rootId>/schema",Http.POST)
> @validate(schema=TestSchema)
> def postValidateSchema(request,rootId,childId,**kwargs):
>     '''Validate using a common schema'''
>     return "%s - %s - %s" % (rootId,childId,kwargs)
>
>
> You could do:
>
> class MyPost(CorePost):
>     @route("/validate/<int:rootId>/schema",Http.POST)
>     @validate(schema=TestSchema)
>     def postValidateSchema(self,request,rootId,childId,**kwargs):
>         '''Validate using a common schema'''
>         return "%s - %s - %s" % (rootId,childId,kwargs)
>
>
> This would allow for re-usable objects; for example, rather than having a
> "blog article create" API (sorry for the uninspired example, it's late) for
> your entire site, you would have a "article create" API on a "Blog", which
> would enable you to have multiple Blog objects (perhaps with different
> authors, in different permission domains, etc).  This would also make
> re-using the relevant objects between different applications easier.
>
> In other words, global variables are bad, and this looks like it depends
> rather heavily on them.
>
> Any thoughts on this?  Am I missing the point?
>
> Thanks,
>
> -glyph
>
>
> _______________________________________________
> Twisted-web mailing list
> [email protected]
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
>
>

_______________________________________________
Twisted-web mailing list
[email protected]
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.