{"action":"created","issue":{"url":"https://api.github.com/repos/manywho/service-box/issues/30","repository_url":"https://api.github.com/repos/manywho/service-box","labels_url":"https://api.github.com/repos/manywho/service-box/issues/30/labels{/name}","comments_url":"https://api.github.com/repos/manywho/service-box/issues/30/comments","events_url":"https://api.github.com/repos/manywho/service-box/issues/30/events","html_url":"https://github.com/manywho/service-box/issues/30","id":271847440,"number":30,"title":"Removing child object","user":{"login":"josecollazzi","id":1303399,"avatar_url":"https://avatars3.githubusercontent.com/u/1303399?v=4","gravatar_id":"","url":"https://api.github.com/users/josecollazzi","html_url":"https://github.com/josecollazzi","followers_url":"https://api.github.com/users/josecollazzi/followers","following_url":"https://api.github.com/users/josecollazzi/following{/other_user}","gists_url":"https://api.github.com/users/josecollazzi/gists{/gist_id}","starred_url":"https://api.github.com/users/josecollazzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josecollazzi/subscriptions","organizations_url":"https://api.github.com/users/josecollazzi/orgs","repos_url":"https://api.github.com/users/josecollazzi/repos","events_url":"https://api.github.com/users/josecollazzi/events{/privacy}","received_events_url":"https://api.github.com/users/josecollazzi/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2017-11-07T14:19:50Z","updated_at":"2017-11-10T10:40:06Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"The current behavior looks like a pre-optimization, removing child object will do the user experience easier:\r\n\r\n1) don't need to handle child objects\r\n2) don't need to partial populate objects and then keep track of which properties are populated during the flow (a common scenario we populated Parent Folder.ID but not the name of the folder)\r\n3) it keep consistency with SQL-service (we return foreign key instead of related tables)\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/manywho/service-box/issues/comments/343439050","html_url":"https://github.com/manywho/service-box/issues/30#issuecomment-343439050","issue_url":"https://api.github.com/repos/manywho/service-box/issues/30","id":343439050,"user":{"login":"josecollazzi","id":1303399,"avatar_url":"https://avatars3.githubusercontent.com/u/1303399?v=4","gravatar_id":"","url":"https://api.github.com/users/josecollazzi","html_url":"https://github.com/josecollazzi","followers_url":"https://api.github.com/users/josecollazzi/followers","following_url":"https://api.github.com/users/josecollazzi/following{/other_user}","gists_url":"https://api.github.com/users/josecollazzi/gists{/gist_id}","starred_url":"https://api.github.com/users/josecollazzi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josecollazzi/subscriptions","organizations_url":"https://api.github.com/users/josecollazzi/orgs","repos_url":"https://api.github.com/users/josecollazzi/repos","events_url":"https://api.github.com/users/josecollazzi/events{/privacy}","received_events_url":"https://api.github.com/users/josecollazzi/received_events","type":"User","site_admin":false},"created_at":"2017-11-10T10:40:06Z","updated_at":"2017-11-10T10:40:06Z","author_association":"CONTRIBUTOR","body":"@jonjomckay E.g. Approve a contract in the folder \"folder-contract\", the manager search for the folder with the name \"folder-contract\", then list all the files in that folder, but with pagination so it uses a load. Then he selects a file (he got an object file). then create a task (with the file id) and subject \"approved contract\". \r\n\r\nWhat do you think of having both IDs and child object, and we analyze how is it used? That will not break the current (\"staging\") service, and we can take a decision based on real data. Also, it will bring the advantage of knowing using the debugger if a child object is null or it hasn't been load (the case of \"Child ID\" is not null and a \"Child\" is null). Currently, there is no concept of lazy-load so the builder needs to \"remember\" if the child object has been loaded.\r\n"}}
{"actor":{"display_login":"josecollazzi"}}