Yes in the sense that I would not bother with providers for individual
Grades, as (as I understand your explanation to be) those concepts don’t have independent meaning outside of the context of their enclosing
Session, so all edit activity should take place on a
Session object. No in the sense that I would not use Ionic’s
NavParams to sling these
Session objects around, both because of my earlier comment about having the same thing in different places and because you again are going to be taking needless serialization/deserialization hits doing that.
So I would have a provider that exposes a
Session somehow, and all other objects in your app needing to futz with it would inject that provider. You can also look into the Ionic-Native network connectivity plugin if you want to consider automating the uploading process. Instructors without data plans can put their devices in airplane mode, and then when they take it off airplane mode, the app can automatically sense this and start uploading.
Absent other concerns, I would tend to prefer this option of having all modifications be made to a session object, which will keep the data in one authoritative place always. When you start to get cute with hacking off bits of it and folding modifications back in, you will create significant additional complexity. Unless there’s some other worthwhile benefit, I would try to stay away from that.