0

我在Objective -c中使用NSRails :

NSError *error;
    posts = [NSMutableArray arrayWithArray:[Post remoteAll:&error]];
    NSLog(@"%@", posts);

我要回来了:

2013-10-07 22:03:11.377 MyBlog[19411:303] [NSRails][OUT] ===> GET to http://localhost:3000/posts 
2013-10-07 22:03:11.813 MyBlogr[19411:303] (
    "<Post: 0x101a0eb80>"
)

我将如何把这样的东西"<Post: 0x101a0eb80>"变成普通的 JSON?

这很奇怪,因为当我去http://localhost:3000/posts.json(或没有分机。“.json”)时,我得到了这个:

{
id: 1,
created_at: "2013-10-06T22:18:24.219Z",
updated_at: "2013-10-06T22:18:24.219Z",
galleries: [
{
id: 1,
name: "my gallery",
user_id: 1,
post_id: 1,
created_at: "2013-10-06T22:20:54.446Z",
updated_at: "2013-10-06T22:20:54.446Z"
},
4

1 回答 1

0

像这样调用 NSLog:

NSLog(@"%@", posts);

不会将您的对象序列化为 JSON。它只是尝试显示对象的描述。在这种情况下,一个 NSArray 的描述

我不清楚您为什么要尝试取回 JSON。您是否只是试图验证您的对象是否已正确实例化并包含您期望的数据?

在 NSLog 语句上设置断点。调试器停止后,尝试:

po [posts objectAtIndex:0].name

这应该确认名称属性是“我的画廊”。但是,如果您真的想从您的对象中获取 JSON,您将需要查看NSJson

于 2013-10-08T05:40:41.647 回答