首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby datamapper关联

Ruby datamapper关联
EN

Stack Overflow用户
提问于 2014-06-05 03:21:36
回答 1查看 125关注 0票数 0

我刚刚开始学习Ruby和datamapper,我已经阅读了DataMapper官方网站上关于关联的文档,但我仍然有两个问题。首先,每当我添加关联对象时,我在显示所有对象时看不到它。我有这样的测试类:

代码语言:javascript
复制
class Test
  include DataMapper::Resource
  property :id, Serial
  property :name, String
  has 1, :phonen, :through => Resource
end

然后是phonen类,比如:

代码语言:javascript
复制
class Phonen
  include DataMapper::Resource
  property :id, Serial
  property :number, String
  belongs_to :test
end

然后我创建了这两个对象

代码语言:javascript
复制
@test = Test.create(
  :name => "Name here"
)

@phone = Phonen.create(
  :number => "Phone number"
)

@test.phonen = @phone
@test.save

我想这样显示它们(我想返回json)

代码语言:javascript
复制
get '/' do
  Test.all.to_json
end

我做错了什么?也许是to_json的问题……我真的不知道..。但是我对这个主题还有一个额外的问题,假设我设法连接了这两个类,如果我显示JSON,我会得到Phonen { }还是只在{ }类中?我知道这可能是个很简单的问题,但我想不出来。这就是为什么我决定问你们。感谢你的帮助

EN

回答 1

Stack Overflow用户

发布于 2014-06-05 05:05:44

Test.all以数组的形式返回活动记录关联,而不是哈希,当您尝试转换为json时,它会失败。

您可以尝试:

代码语言:javascript
复制
render json: Test.all

如本问题所问:

Ruby array to JSON and Rails JSON rendering

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24045827

复制
相关文章

相似问题

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