2016-09-03 1 views
3

同じで、他のプロパティを使用してJSONModelプロパティの割り当て値は、ここに私のJSONデータJSONModelは - JSONModel

[{ 
    "id": 1, 
    "name":"Soup", 
    "price1":100, 
    "price2":10, 
}, 
{ 
    "id": 2, 
    "name":"Salad", 
    "price1":100, 
    "price2":10, 
}] 

NSArray* models = [ProductModel arrayOfModelsFromDictionaries:objects]; 

今何をのViewControllerで

@interface ProductModel : JSONModel 
@property (assign, nonatomic) int id; 
@property (strong, nonatomic) NSString* name; 
@property (assign, nonatomic) float price1; 
@property (assign, nonatomic) float price2; 
@property (assign, nonatomic) BOOL isOK; 
@property (assign, nonatomic) float<Optional> total; // not coming 
@end 

を次のように私はJSONModelを作成します私は欲しいです

if(isOK) 
{ 
    total = price1 + price2; 
} else { 
    total = price1 - price2; 
} 

はViewControllerをでモデルの配列を反復し、

答えて

3

の値を割り当てずに私の提案は、あなたがtotalのgetterを作成することで、モデルファイル内のどこかに、このロジックを記述することが可能ですあなたのProductModelクラスのプロパティ

-(float) total 
{ 
    if(self.isOK) 
    { 
     return self.price1 + self.price2; 
    } else { 
     return self.price1 - self.price2; 
    } 
} 
2
  • ProductModel

    @property (assign, nonatomic, readonly) float total; 
    
  • で読み取り専用プロパティを宣言し、それが

    - (float)total 
    { 
        return (self.isOK) ? self.price1 + self.price2 : self.price1 - self.price2; 
    } 
    

その後、あなたは、単に構文model.totalで値を読むことができます実装

関連する問題