1

MVCアプリケーションでは、ビューからコントローラーに送信される配列(行)の配列があります。配列のすべての行は、データベース内の行を表します。

私は次の点で立ち往生しています:
-モデル内のすべての行の配列を受け入れ、そこで行をループする関数を定義できます。
-または、単一の行を受け入れる関数を定義し、それをコントローラーのループで呼び出すことができます。

(MVCの観点から)正しい方法はどれですか?

編集:
問題は私がすべきことです:
$model->insertData($arrayOfRows);
または
foreach($arrayOfRows as $row) {
$model->insertRow($row);
}

4

3 に答える 3

0

適切なMVCアプリケーションでは、データはビューから取得されておらず、そもそもコントローラーに送信されません。

データはモデル内に存在する必要があります。データベース接続とそこから取得されるすべてのデータは、モデルオブジェクトで表す必要があり、プレゼンテーション(データの視覚化など)またはデータに依存するアプリケーションレベルの決定を行うために必要な場合にのみ、ビュー/コントローラーに公開する必要があります。

于 2012-11-19T12:44:08.117 に答える
0

そのため、最初のソリューションを使用することになりまし
$model->insertData($arrayOfRows);
た。モデル内の行の配列をループします。

于 2012-11-26T07:38:10.913 に答える
-1

以下のパターンを試してみてください。

var $arr = [];

$arr.push($row); /*insert all rows to an array */

then from the jquery $.post, set the array to the parameter like,

$.post(
    '<controller/action>',
    { m: "[" + $arr + "]" },
    function (data){}
);
于 2012-11-21T06:25:05.107 に答える