「プロジェクト」と「タグ」という2つのリソースがあります。新しいプロジェクトを追加すると、データはPOSTを介して転送され、project.create(req、res)に渡されます。これにより、プロジェクトがmongodbデータベースに保存され、res.send(200);
成功したときに戻ります。
プロジェクトとタグに多対多の関係を持たせて、すべてのタグを簡単に一覧表示したり、プロジェクトタグを一覧表示したり、タグプロジェクトを一覧表示したりできるようにしたいと思います。
これらのタグを格納する最も簡単な方法は、project.create関数でこれらのタグを検索してアップサートし、IDの配列を配列に保存することproject.tags
です。ただし、これはDRYに違反しているように感じます... tag.create(req、res)に同じタグfind+upsertコードがあります。
project.createが呼び出されたときに、tag.createを呼び出すようにするにはどうすればよいですか?また、find + upsertを実行するミドルウェアを作成した場合、これはより良いでしょうか?