2013-05-21 41 views
0

我有一个使用活动记录连接到旧数据库的模型。因为列名全部大写。我已经当我使用rest_in_place宝石返回的JSON只包含原始列名创造了他们alias_attributes像这样gem rest_in_place和alias_attribute问题

alias_attribute(:marketing_code, :MARKETING_CODE) 

Unfortunatley。这导致rest_in_place永远不会返回写入的值,它只是说保存....但更新已完成。

这就是我认为的代码看起来像

<span id="fund_<%= fund.id %>_MARKETING_CODE" class="rest-in-place" data-url="/funds/<%= fund.id %>" data-object="fund" data-attribute="MARKETING_CODE"> 
      <%= fund.MARKETING_CODE.blank? ? 'Fill In' : fund.MARKETING_CODE %> 
      </span> 

有没有什么办法让它与属性别名工作?我宁愿使用它们,所以我可以遵循ruby标准。下面是rest_in_place

http://rubydoc.info/gems/rest_in_place/2.1.1/frames

回答

0

自述我想通了,我的问题,并希望通过这种与alias_attribute ActiveRecord的它不会影响响应JSON的时候帮助了别人。

我通过查看Chrome开发人员工具中的Network选项卡注意到了这一点。在我的具体情况中,我使用alias_attribute将旧数据库列从upper_case更改为lower_case,以适应rails代码样式指南。不幸的是,在查看响应的JSON时,我看到属性被作为大写返回。

因此,对于那些使用rest_in_place与遗留数据库的人来说,它只会响应实际的列名称。如果有人知道工作,我会很感激。