首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jsonmodel -模型级联(模型包括其他模型)

jsonmodel -模型级联(模型包括其他模型)
EN

Stack Overflow用户
提问于 2016-07-27 18:38:08
回答 1查看 178关注 0票数 0

我在网络上使用了同样的例子

OrderModel.h

代码语言:javascript
复制
@protocol ProductModel
@end

@interface ProductModel : JSONModel
@property (assign, nonatomic) int id;
@property (strong, nonatomic) NSString* name;
@property (assign, nonatomic) float price;
@end

@implementation ProductModel
@end

@interface OrderModel : JSONModel
@property (assign, nonatomic) int order_id;
@property (assign, nonatomic) float total_price;
@property (strong, nonatomic) NSArray<ProductModel>* products;
@end

@implementation OrderModel
@end

但是当我构建这个项目时,我遇到了一个问题“重复符号”。

代码语言:javascript
复制
duplicate symbol _OBJC_CLASS_$_OrderModel
ld: 576 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-27 18:56:56

@实现应该出现在.m文件中,@接口应该出现在.h文件中。

您应该只导入.h文件。否则,同一个类将有多个实现。

ProductModel.h:

代码语言:javascript
复制
@interface ProductModel : JSONModel
@property (assign, nonatomic) int id;
@property (strong, nonatomic) NSString* name;
@property (assign, nonatomic) float price;
@end

ProductModel.m:

代码语言:javascript
复制
#import "ProductModel.h"    

@implementation ProductModel
@end

OrderModel.h:

代码语言:javascript
复制
@interface OrderModel : JSONModel
@property (assign, nonatomic) int order_id;
@property (assign, nonatomic) float total_price;
@property (strong, nonatomic) NSArray<ProductModel>* products;
@end

OrderModel.m

代码语言:javascript
复制
#import "OrderModel.h"

@implementation OrderModel
@end

例如,如果你想在视图控制器中使用ProductModel类,只需导入"ProductModel.h":

代码语言:javascript
复制
#import "ProductModel.h"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38610602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档