シンプルなレールアプリを開発しており、最後に作成された列の詳細を返すカスタムメソッドがあります
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 が 3 ではなく 20002 として返されるのはなぜですか? (id は自動インクリメントでユニークキー、logid は主キー)
編集:
u
文字はユニコード文字列であるため、Python側で追加されていることがわかり、ここに示すように削除されました