我正在开发一个简单的 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 会添加
u
到每个 JSON 元素中? - 为什么 id 返回为 20002 而不是 3?(id 是自增且是唯一键,logid 是主键)
编辑:
我发现该字符u
被添加到 python 端,因为它们是 unicode 字符串并摆脱了它,如此处所示