support hasMany though