generator takes field:type arguments for generating model