summerICEREDTEA
summerICEREDTEA
2013-01-05 03:28
采纳率: 63.2%
浏览 2.1k

ruby根据模板生成文件使用什么gem?

有一些重复的代码 就是方法名 参数不一样 想用ruby自动生成 请问用什么gem呢?

--UPDATE--


-(void)doUpdateUserInfo:(NSDictionary *)params success:(YunposAPISuccess)success failure:(YunposAPIFailure)failure{
    [self postPath:@"" parameters:[self createParam:params action:@"doUpdateUserInfo" model:@"user"] success:^(AFHTTPRequestOperation *operation, id responseObject) {
        if (success) {
            success((AFJSONRequestOperation*)operation, responseObject);
        }
    } failure: ^(AFHTTPRequestOperation *operation, NSError *error){
        if (failure) {
            failure((AFJSONRequestOperation *)operation, error);
        }
    }];
}

类似这样一个函数 我要写好多次
但是 每个函数 会变的 只有函数名  然后[self postPath:@"" parameters:[self createParam:params action:@"doUpdateUserInfo" model:@"user"] 这里面的参数

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • hooopo
    Hooopo 2013-01-05 05:36
    已采纳

    ERB就可以了!
    更简单点用here doc然后gsub替换一下也行。
    好像编辑器都有插入片段相同格式代码的功能。

    ERB就是类似这样:

    # tmp.erb
    -(void)<%= function_name %>:(NSDictionary *)params success:(YunposAPISuccess)success failure:(YunposAPIFailure)failure{
        [self <%= path_name %>:@"" parameters:[self createParam:params action:@"doUpdateUserInfo" model:@"user"] success:^(AFHTTPRequestOperation *operation, id responseObject) {
            if (success) {
                success((AFJSONRequestOperation*)operation, responseObject);
            }
        } failure: ^(AFHTTPRequestOperation *operation, NSError *error){
            if (failure) {
                failure((AFJSONRequestOperation *)operation, error);
            }
        }];
    }
    

    然后根据传来的变量生成你想要的结果..

    点赞 评论

相关推荐