0

これは、MVC モデルの設計パターンに関する質問です。

GeddyJs(Node.js用)を使っていますが、Sails.jsなどと同じパターンです。

コードをコントローラーに配置する必要があるのか​​、モデルに配置する必要があるのか​​ わからない場合があります。

例えば:

私のアルゴリズムに応じて、各シリアルに一意の生成されたIDが必要なモデルがあります(たとえば、 ...SerialKeyのようなランダムな名前です)。blue catnice car

この生成、データベースに存在するかどうかの確認、および挿入のプロセスは、コントローラーまたはモデルによって実行されるべきものですか?

ご覧のとおり、すべての作成メソッドはこのパターンに従う必要があるためです。つまり、モデル上にある必要があります。ただし、それはロジックのものなので、コントローラーにある必要があります...

それらの状況で何をすべきか?どこに置いても大丈夫ですか?

4

1 に答える 1

1

この生成、データベースに存在するかどうかの確認、および挿入のプロセスは、コントローラーまたはモデルによって実行される必要がありますか?

モデル。もちろん、さまざまな意見がありますが、私は「太ったモデル、細いコントローラー」のデザインを好みます。私はコントローラを「接着コード」と見なしており、入力側と出力側の両方に共同作業者がいるため、テストが難しくなっています。したがって、それらをスキニーに保ちます。デフォルト値を生成し、一意性やその他のデータ指向ロジックなどの制約がモデルに確実に組み込まれるようにします。

于 2014-08-22T23:28:34.450 に答える