【发布时间】:2013-06-03 17:50:42
【问题描述】:
我正在开发一个简单的 rails 应用程序,并且我有一个自定义方法可以返回最后创建的列详细信息
def getid
@b_id = params[:bid]
@log_id = Log.where("bid = ?",@b_id).last.to_json
respond_to do |format|
format.html{render :text => @log_id}
format.json{render :json => @log_id}
end
end
该列在后端运行以下查询
Log Load (0.2ms) SELECT `logs`.* FROM `logs` WHERE (bid = 'B01') ORDER BY `logs`.`logid` DESC LIMIT 1
对应的列值为id:3,logid:20002
返回的json是{u'id' : u'20002, u'logid' : u'20002'}
我的问题:
- 为什么 rails 会在每个 JSON 元素中添加
u? - 为什么返回的 id 是 20002 而不是 3? (id 为自增且唯一键,logid 为主键)
编辑:
我发现字符 u 被添加到 python 端,因为它们是 unicode 字符串,并删除了它,如下所示
【问题讨论】:
-
我正在使用python请求来获取json
标签: ruby-on-rails json rails-activerecord