2

モデル/ストアのプロキシを使用してextjs 4フォームを送信することは可能ですか? リモート検証のために送信アクションを使用したいと考えています。データベース/サーバー接続を 2 回構成することを回避できるように、モデルの残りのプロキシ構成を使用したいと考えています。

助けてくれてありがとう!

4

1 に答える 1

2

フォームがモデルの 1 つのインスタンスを正確に表している場合、なぜ or ではなく form submit を使用しているのmodel.save();でしょstore.sync()うか? これらのメソッドは、データ モデルを操作するために設計されており、ExtJS データの優れた組み込み機能をすべて活用します。

Ext.data.Modelのドキュメントの「プロキシの使用」という小見出しの下に、実行したいさまざまな操作 (GET、PUT、POST、DELETE - ロード、保存、保存、破棄) の例があります。

次に、いくつかのコールバックを model.save() メソッドにアタッチして、操作が成功したか失敗したかを確認できます (おそらくサーバー側の検証による)。

特定のユースケースについて話している Sencha フォーラムの投稿は次のとおりです: ExtJS 4 Sync and success/failure processing

要約すると、サーバー側の検証で次のような JSON コンテンツのエラーが返された場合:

{ "success": "false", "message": "Error message goes here." }

次に、モデルを保存して失敗の応答をキャッチし、追加のメッセージ JSON 要素を使用して、サーバー側の検証に失敗した理由をユーザーに警告できます。もちろん、必要に応じてより詳細な JSON メッセージを返すこともできますが、これは概念を証明しています。アプリケーションに合わせて拡張します。

myExtModelInstance.save({
    success: function(rec, op) {
        // do something
    },
    failure: function(rec, op) {
        // Lets show a message for the failure with the 
        // content from the server's returned failure JSON
        Ext.Msg.alert("Failed",op.request.scope.reader.jsonData["message"]);
    }
});
于 2012-04-18T15:50:45.873 に答える