这是我的序列化程序
class TestSerializer < ActiveModel::Serializer
attributes :post
def post
@post = user.joins(:post).select("user.name as name,post.content as content").where("user_id = ?",object.id)
end
end
如何在emberjs模型和视图中调用此json响应。
答案 0 :(得分:0)
你似乎有点倒退了。如果你想序列化帖子,你应该有一个PostSerializer。
如果您已经拥有如下的Post模型设置,
class User < AR::Base
has_many :posts
end
class Post < AR::Base
belongs_to :user
end
创建一个序列化程序:
rails g serializer post
rails g serializer user
这看起来像
class PostSerializer < ActiveModel::Serializer
attributes :id, :title
has_one :user
end
在您的控制器中,确保您已设置:
class PostsController
respond_to :html, :json
def show
@post = Post.find(params[:id])
respond_with @post
end
end
然后,你们都准备好了。打电话给/posts/1.json,你就会得到
{"post":{"id":1,"title":"the title","user":{"id":1,"name":"jesse"}}}