Eye color and hair color have been studies pretty intensively and they definitely have models which are more complex than "if you have value Y at position 37 of gene X, you have blue eyes". The way it's normally stated is that we can explain 50% of the heritance of eye color using a limited set of SNPs.
What we don't have is a comprehensive model of how complex phenotypes arise from genotypes. This is only because of historical oversimplification, and partly because the underlying causality of phenotypes is remarkably sophisticated due to a combination of many factors, overlapped with enormous amounts of noise and confounding factors.