form, add and edit for Need + refactoring resource