onUpdate binding callback not called if submodel has been updated

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

onUpdate binding callback not called if submodel has been updated

woprandi
Hi,

I have a controller with model and I bind a subset of this model to a list model (with addTarget). I update a property of an item of the list model and the controller model is well updated but the onUpdate callback is not called..
Check this example : http://tinyurl.com/h2o6yv4

I would like to do some stuff in the onUpdate (such as a backend request)

Another question : Why the target2model onUpdate is called when I set the binding ?
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: onUpdate binding callback not called if submodel has been updated

John Spackman
Hi William

The onUpdate method is being called; is it possible that you were looking in the Playground log and not in the browser log?  The Playground log only includes messages from this.warn() etc (or qx.log.Logger.warn() etc), but console.log() statements go direct to the browser console.

I’ve updated your sample to use this.warn() and see messages when onUpdate() is being called: http://tinyurl.com/jhl6uwo

001438 qx.application.Standalone[495-0]: Starting application 'Custom Code' ...
001451 qx.application.Standalone[495-0]: Model updated from controller to list
001452 qx.application.Standalone[495-0]: Model updated from list to controller
001452 qx.application.Standalone[495-0]: Trying to update list model...
001452 qx.application.Standalone[495-0]: true
001452 qx.application.Standalone[495-0]: Successfully started.


John




On 15/02/2016, 09:00, "woprandi" <[hidden email]> wrote:

>Hi,
>
>I have a controller with model and I bind a subset of this model to a list
>model (with addTarget). I update a property of an item of the list model and
>the controller model is well updated but the onUpdate callback is not
>called..
>Check this example : http://tinyurl.com/h2o6yv4
>
>I would like to do some stuff in the onUpdate (such as a backend request)
>
>Another question : Why the target2model onUpdate is called when I set the
>binding ?
>
>
>
>--
>View this message in context: http://qooxdoo.678.n2.nabble.com/onUpdate-binding-callback-not-called-if-submodel-has-been-updated-tp7588000.html
>Sent from the qooxdoo mailing list archive at Nabble.com.
>
>------------------------------------------------------------------------------
>Site24x7 APM Insight: Get Deep Visibility into Application Performance
>APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>Monitor end-to-end web transactions and take corrective actions now
>Troubleshoot faster and improve end-user experience. Signup Now!
>http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>_______________________________________________
>qooxdoo-devel mailing list
>[hidden email]
>https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: onUpdate binding callback not called if submodel has been updated

woprandi
Hi John,

This is not the problem, as you can see in your updated example, after have updated the model (line 34), onUpdate() has not be called. This is my problem, I would like to found a way to be "notified" when the model has changed.

2016-02-18 7:02 GMT+01:00 John Spackman <[hidden email]>:
Hi William

The onUpdate method is being called; is it possible that you were looking in the Playground log and not in the browser log?  The Playground log only includes messages from this.warn() etc (or qx.log.Logger.warn() etc), but console.log() statements go direct to the browser console.

I’ve updated your sample to use this.warn() and see messages when onUpdate() is being called: http://tinyurl.com/jhl6uwo

001438 qx.application.Standalone[495-0]: Starting application 'Custom Code' ...
001451 qx.application.Standalone[495-0]: Model updated from controller to list
001452 qx.application.Standalone[495-0]: Model updated from list to controller
001452 qx.application.Standalone[495-0]: Trying to update list model...
001452 qx.application.Standalone[495-0]: true
001452 qx.application.Standalone[495-0]: Successfully started.


John




On 15/02/2016, 09:00, "woprandi" <[hidden email]> wrote:

>Hi,
>
>I have a controller with model and I bind a subset of this model to a list
>model (with addTarget). I update a property of an item of the list model and
>the controller model is well updated but the onUpdate callback is not
>called..
>Check this example : http://tinyurl.com/h2o6yv4
>
>I would like to do some stuff in the onUpdate (such as a backend request)
>
>Another question : Why the target2model onUpdate is called when I set the
>binding ?
>
>
>
>--
>View this message in context: http://qooxdoo.678.n2.nabble.com/onUpdate-binding-callback-not-called-if-submodel-has-been-updated-tp7588000.html
>Sent from the qooxdoo mailing list archive at Nabble.com.
>
>------------------------------------------------------------------------------
>Site24x7 APM Insight: Get Deep Visibility into Application Performance
>APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>Monitor end-to-end web transactions and take corrective actions now
>Troubleshoot faster and improve end-user experience. Signup Now!
>http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>_______________________________________________
>qooxdoo-devel mailing list
>[hidden email]
>https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



--

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: onUpdate binding callback not called if submodel has been updated

John Spackman
Hi William

Ok, I see what you mean now; the issue is that while qx.data.controller.Object is being used to bind model.submodel2 to list.model, it does not know anything about model.submodel2[0].a – it’s never being told to bind that sub-property so it will never see it change and never report it.

Automatically monitoring sub properties (or sub-sub-properties etc) is not something that is supported by qx.data.controller.Object, so I’d implement my own monitoring class – here’s one that I’ve quickly hacked together: http://tinyurl.com/zcdavo9

Note that there is no List or Object controller, but FWIW if you want to bind to a List you need to separately use the qx.data.controller.List, as you can see here: http://tinyurl.com/zwyvt8u

John

From: William Oprandi <[hidden email]>
Reply-To: qooxdoo Development <[hidden email]>
Date: Tuesday, 23 February 2016 at 07:56
To: qooxdoo Development <[hidden email]>
Subject: Re: [qooxdoo-devel] onUpdate binding callback not called if submodel has been updated

Hi John,

This is not the problem, as you can see in your updated example, after have updated the model (line 34), onUpdate() has not be called. This is my problem, I would like to found a way to be "notified" when the model has changed.

2016-02-18 7:02 GMT+01:00 John Spackman <[hidden email]>:
Hi William

The onUpdate method is being called; is it possible that you were looking in the Playground log and not in the browser log?  The Playground log only includes messages from this.warn() etc (or qx.log.Logger.warn() etc), but console.log() statements go direct to the browser console.

I’ve updated your sample to use this.warn() and see messages when onUpdate() is being called: http://tinyurl.com/jhl6uwo

001438 qx.application.Standalone[495-0]: Starting application 'Custom Code' ...
001451 qx.application.Standalone[495-0]: Model updated from controller to list
001452 qx.application.Standalone[495-0]: Model updated from list to controller
001452 qx.application.Standalone[495-0]: Trying to update list model...
001452 qx.application.Standalone[495-0]: true
001452 qx.application.Standalone[495-0]: Successfully started.


John




On 15/02/2016, 09:00, "woprandi" <[hidden email]> wrote:

>Hi,
>
>I have a controller with model and I bind a subset of this model to a list
>model (with addTarget). I update a property of an item of the list model and
>the controller model is well updated but the onUpdate callback is not
>called..
>Check this example : http://tinyurl.com/h2o6yv4
>
>I would like to do some stuff in the onUpdate (such as a backend request)
>
>Another question : Why the target2model onUpdate is called when I set the
>binding ?
>
>
>
>--
>View this message in context: http://qooxdoo.678.n2.nabble.com/onUpdate-binding-callback-not-called-if-submodel-has-been-updated-tp7588000.html
>Sent from the qooxdoo mailing list archive at Nabble.com.
>
>------------------------------------------------------------------------------
>Site24x7 APM Insight: Get Deep Visibility into Application Performance
>APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>Monitor end-to-end web transactions and take corrective actions now
>Troubleshoot faster and improve end-user experience. Signup Now!
>http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>_______________________________________________
>qooxdoo-devel mailing list
>[hidden email]
>https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



--
------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140_______________________________________________ qooxdoo-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Loading...