我对rails很新,我刚刚发现了序列化程序。
我继续执行我的一个模型。我用
生成了一个序列化器rails g serializer MyModel
然后在我的控制器中,在我的函数中呈现我的数据:
render json: MyModel.where(...), each_serializer: MyModelSerializer, root: false
# note : that's the only line in my function
最后我的序列化器:
class MyModelSerializer < ActiveModel::Serializer
attributes :id, :name, ... # all attributes in my model, I double-checked
end
我现在从rails服务器获得的错误如下:
uninitialized constant MyModelController::MyModelSerializer
我错过了什么吗? :(
感谢您的帮助:)
顺便说一句,我补充说,应该使用来自视图的ajax请求调用应该使用序列化程序呈现json的函数。不知道它是否改变了事情......
答案 0 :(得分:0)
尝试在控制器代码中更改此位:
each_serializer: ::MyModelSerializer
两个冒号基本上强制Ruby解释器在“root”中查找MyModelSerializer
类,而不是MyModelController
内。从您的错误消息,这似乎是问题。