title: Same controller, two different models
body: <p>This looks like a simple problem but I cannot figure out the best way to approach it:</p>
  
  <p>The big picture: I want to have a reusable address template and include it (using grunt-includes) inside other templates when an address block is needed. For the address template to be stand-alone and reusable, I have attached an address controller to it and its internal model is called addressModel. </p>
  
  <p>The problem: I have a single page that includes that reusable AngularJS <em>address</em> template TWICE: one address is going to be used for Billing and the other one for Shipping.</p>
  
  <p>Question: how do I customize each block to handle their own corresponding model on the parent controller's scope? In other words, from the parent controller I want to say that the model for the first address block is <code>$scope.billingAddress</code> and the model for the second one is linked to <code>$scope.shippingAddress</code>, knowing that inside each address controller I only have access to their local <code>$scope.addressModel</code>, and I have no way to know from any of the child controllers which <code>addressModel</code> was intended for the current controller. </p>