1

検証に失敗したすべてのモデルのプロパティのリストを取得したいと考えています。

たとえば、私のモデルが以下のようなものだとします

var OfferModel = Backbone.Model.extend({
    , defaults: function () {
        return {
            Name: '',
            FunnyUrl: "",
            StartDate: "",
            EndDate: ""
        };
    }
    , validation: {
        Name: { required: true, msg: "Name is required." },
        FunnyUrl: [{ required: true, msg: "Funny Url is required." },
                   { pattern: 'url', msg: 'Enter valid URL, eg : http://yassershaikh.com'}],        
        StartDate: { required: true, fn: 'validateStartDate' },
        EndDate: { required: false, fn: 'validateEndDate' }
    }
});

モデルに含まれるプロパティが多すぎるため、問題をより適切に説明するために一部のみを保持しました。

私のモデルでNameFunnyUrlが満たされていない場合、次のようなこれらのプロパティ名のリストが必要です

  • 名前
  • 面白いリスト

検証に失敗したプロパティ名のリストが必要でした。

ご意見をお聞かせください。

4

1 に答える 1

1

とった!!!!これが私が使用しているコードです。これが誰かにも役立つことを願っています:)

var attributes = this.model.validate(this.model.attribute);
var propertyNames = [];
_.each(attributes, function (validationMessage, propertyName) {
    propertyNames.push(propertyName);
});
console.log(propertyNames); 
于 2013-08-02T08:20:17.727 に答える