Nick Watkins wrote:
> I can't seem to find anything regarding the subject, or perhaps I'm not
> searching for the right thing. For an application I'm developing, I require
> a form whose elements are connected to data in a database. Changes on the
> client side are reflected in the database in real-time, but not necessarily
> the other way around (simultaneous edits of the same form data by different
> administrators could be possible but not common, though some form of "push"
> would be great for this). I'm not sure what my options are other than coding
> the construct from scratch.
>
> Qcl looks very promising, but I'm not sure to what degree it works and is
> stable. Not to mention that the documentation is sparse outside the API
> docs, and tutorials non-existent. If there was a barebones example of a form
> widget interacting with a database, that would be wonderful.
>
> Any suggestions? Thanks, Qooxdoo community.
Hi Nick
have a peek at twisted and on top Nevow/Athena and the LivePage
examples. I coupled qooxdoo and twisted/Nevow/Athena quite loosly and
think this is the best combination since presliced bread and butter were
invented. Nevow/LivePage basically gives you a single webpage into which
you inject/remove widgets of various complexity (think qooxdoo
aggregates like a dialog. Along with the widget in the browser goes an
object on the server which exposes methods which can be called with
callRemote('doSomething', p1, p2, p3), callRemote returning immediately
with a deferred onto which you tack a callBack function being called
when the server method returns its data and an errorBack function which
is called whenever there was something not foreseen happening. Likewise
the server object can call the browser the same way anytime he likes.
So, recollecting the briefly mentioned parts in the above interaction
you get with
- twisted: one of the most mature asynchronous, coherent and tested
networking frameworks available (no its not PHP, its Python based)
implementing everything you find as protocol in the TCP/IP world and if
not, if gives you the tools to do a very clean and high performance
implementation of your own protocols. DB interaction in the same
asynchronous way is of course included, but no ORM support (there are a
few projects hanging out there trying to do so)
http://www.twistedmatrix.com
- nevow: a very comprehensive web framework sitting on top twisted,
which you almost do not use with qooxdoo. A comprehensive object
orientation which rivals and surpasses in my opinion the qooxdoo
implementation of object orientation. You can use both of these with ease
http://www.divmod.org
- nevow/LivePage: asynchronous transparent back and forth calling
between server and browser objects, error handling, JSON marshalling
If you read that far give it a try and hit http://nqx.thieprojects.ch
which gives you a few buttons. If you hit the calculator, you see the
above mentioned technology in action. The calculator does its
calculations on the server, all this object does is sending the
keystrokes to the server via the described RPC implementation. Feel free
to poke around in the source (it's not obfuscated) and ask back if you
like what you see. The other buttons start a few experiments I did for
testing how quick I could throw together more complicated qooxdoo
aggregates (like the telinfo demo button)
HTH, Werner
------------------------------------------------------------------------------
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel