smarter bd()
base on doctrine