<h1> {{title | json}} </h1> <form (ngSubmit)="onSubmit(form.value)" [ngFormModel]="form"> <ul> <li> <label for="medium">Medium</label> <select name="medium" id="medium" ngControl="medium"> <option *ngFor="let medium of lookupLists.mediums" value="{{medium}}">{{medium}}</option> </select> </li> <li> <label for="name">Name</label> <input type="text" name="name" id="name" ngControl="name" ngControl="name" #name="ngForm" /> <div *ngIf="name.errors?.pattern" class="error">name is invalid</div> </li> <li> <label for="year">Year</label> <input type="year" name="year" id="year" ngControl="year" ngControl="year" #year="ngForm" /> <div *ngIf="year.errors?.year" class="error">must be between {{year.errors?.year.min}} and {{year.errors?.year.max}}</div> </li> </ul> <button type="submit" [disabled]="!form.valid ">Save</button> <p> {{mediaItems | json}} </p> </form>