JSON格式不显示所有模型属性(Rails 4)

时间:2018-01-18 22:12:38

标签: ruby-on-rails json

我遇到了一个运行Rails 4.2.7的奇怪问题:当我查看特定模型的HTML索引视图时,一切似乎都很好。当我通过JSON请求相同的数据时,我只获得了属性的子集。

我的索引操作只是:

def index
  @coverages = Coverage.all
end

如果我用

打电话

http://localhost:3000/coverages

一切都在那里。如果我用

打电话

http://localhost:3000/coverages.json

除了:id:created_at:updated_at:url之外,我只返回了7个返回的属性(例如{{1} })。

JSON方法是否以某种方式截断属性?我从来没有记得以前碰到这个。

后记:

我将索引操作修改为:

http://localhost:3005/coverages/1.json

现在我获得了所有属性。可能是因为我没有包含明确的格式语句而违反了Rails最佳实践,但我仍然对我原来的结果感到好奇。

1 个答案:

答案 0 :(得分:0)

我发布了我找到的解决方案(在问题的后记中),以防它有用。关于为什么原始配置不起作用仍然是一个悬而未决的问题。

将索引操作修改为:

def index
  @coverages = Coverage.all
  respond_to do |format|
    format.html {render :index}   
    format.json {render json: @coverages}
  end
end

解决了这个问题。

相关问题