title: Many-to-Many models association, matrix table with additional fields
body: <p>My database is structured with 3 tables: <strong>Product</strong>, <strong>Operation</strong> and a <em>junction table</em> <strong>Product_Operation</strong> for manage many to many relationship.</p>
  <p>The junction table is defined with more than two columns, in that each 'association' has additional information such 'expiration_date' (each operation practible on a specific product can be done for a limited range of time).
  <a href="https://i.stack.imgur.com/5NptX.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/5NptX.png" alt="enter image description here" /></a></p>
  <p>Obviously in ExtJs i've created the model Product and Operation, and managed the relationship according to the official <a href="https://docs.sencha.com/extjs/7.4.0/classic/Ext.data.schema.ManyToMany.html" rel="nofollow noreferrer">documentation</a></p>
  <pre>
      
      Ext.define
      (
          "myapp.model.Product",
          {
              extend: "Ext.data.Model",
              idProperty: "id",
              fields:
              [
                  {
                      name: "id",
                      type: "integer"
                  },
                  {
                      name: "name",
                      type: "string"
                  },
              ],
              manyToMany:
              {
                  Product_Operation:
                  {
                      type: "myapp.model.Operation",
                      role: "operations",
                      field: "id", //pk operation 
                      right:
                      {
                          field: "id", //pk product
                          role: "products",
                      }
                  }
              }
          }
      );
      
      Ext.define
      (
          "myapp.model.Operation",
          {
              extend: "Ext.data.Model",
              idProperty: "id",
              fields:
              [
                  {
                      name: "id",
                      type: "integer"
                  },
                  {
                      name: "name",
                      type: "string"
                  }
              ]
          }
      );
  </pre>
  <p>But i noted that there's no way to map additional fields in what they call '<em>matrix table</em>'. So, how can i manage my additional data coming from the junction table? There's a predefined way to do it with extjs framework itself?</p>