Mojolicous+Teng+JSON扱う時に注意しなくてはならないこと
以前、MojolicousでJSONを返す時BOOLEANを扱う時は、マッピングで注意が必要というようなことを書きました。 TodoMVC(backbone.js)のバックエンドをMojoliciousにしてみた。
今度は、数字項目を扱う時に注意が必要なことを書きます。 こんな感じで+0を入れてあげました。+0しないとJSON値が文字列として返ってしまいます。
締切近く、追い込まれつつも、はまりまくる@dokechinからの情報でした。
sub index { my $self = shift; my $user_id = $self->session("id"); my @rows = $self->db->search_by_sql( qq{ select id,user_id,name,img,url,price,store_url,store_name,0 as distance,bought_at,polish_at from Equipment Where user_id=? }, [$user_id]); my @json = (); foreach my $row (@rows){ push (@json , {id => $row->id, user_id => $row->user_id, name => $row->name, img => $row->img, url => $row->url, price => $row->price + 0, store_url => $row->store_url, store_name => $row->store_name, distance => $row->distance + 0, bought_at => $row->bought_at, polish_at => $row->polish_at}); } $self->render( json => \@json ); }