add ID generator on all model, add complementary getter