Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
jbuilderを使いはじめたのでメモ jbuilderとは jsonのテンプレートエンジンです。 xxx.json.jbuilderファイルにDSLを記述するとJSONにして返してくれるという物。 ファイルに記述するので難しいjson形式を返す時とかは便利そうです。 DHHが作ったもので、Rails4からはデフォルトで使えるようになっているようです。 jbuilderを使うための設定 Rails4では特に設定をせずに利用できます。 views以下にxxx.json.jbuilderファイルを作ってlocalhost:3000/items.jsonにアクセスすればjson形式のレスポンスが返ってくれます。 jbuilderの書き方 Modelを使わない書き方 一番シンプルな形式。 json.set! :key, 'value' # {"key":"value"} 入れ子はこんな感じ。 js
そろそろ4月も近いということもあって、新たにWeb業界やSIer業界に入るぞという方がプログラミングの勉強をし始めているころでしょうか。最近は、エンタープライズでもWebクライアントが主流になりつつあるのでJavaScriptの習得は避けては通れない道だと思います。また、Node.js等サーバーサイドのJavaScriptも出てきたこともあって、非常に有用な言語になりつつあります。 そんなJavaScriptを学び始めている人の中でも、ある程度プログラミングをやったことがある人がJavaScriptの綺麗な書き方を学ぶのに絶対理解しておいた方が良い300行程度のソースコードがあります。 それは、JavaScript: The Good Partsに載っているJSONパーサのコードです。 JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス 作者:
たとえばこういう JSON があったとして、 {"profile_use_background_image":true,"protected":false,"profile_banner_url":"https:\/\/si0.twimg.com\/brand_banners\/twitter\/1323368512\/live","default_profile":false,"lang":"en","profile_text_color":"333333","followers_count":7610082,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1124040897\/at-twitter_normal.png","name":"Twitter","show_all_inline_media":true,
WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 以前公開した前バージョンにはたくさんのアドバイス、リンクなどいただきまして、ありがとうございます。少々時間が経ってしまいましたが、あれからいろいろと勉強しまして、 strscan なる便利なライブラリが Ruby の標準ライブラリに含まれていることも知りました。それらをきちんと使えばコードをだいぶシンプルにできそうだったので、思い切って書き直してみました。まだまだ
先日、ここで発表したFacebookユーザーむけグループウェア「Fruence.com」。今年のトレンドになるであろう「ソシアル・アプリ」の実例という意味もあったが、私自身の中で少し前から形になりつつあった「AJAXを最大限に活用した新しい形にウェブ・アプリケーション」のアーキテクチャの実践という意味合いも大きい。 このアーキテクチャの特徴は以下の3つである。 サーバー側は、JSON over HTTPのAPIとHTML/CSS(およびそのテンプレート)をスタティックな形でのみ提供する(サーバー側では、ダイナミックなHTMLの生成はしない) クライアント側では、JavaScriptを使ってサーバーから取得したJSONとHTMLのテンプレートを組み合わせて(データ・バインドして)表示する。 ウェブサイトはあたかも独立したアプリのように動き、操作中はURLは一切変化しない もともとは、HTML
「偉大なるHelloWorld」をつぶやいている一覧を抽出する 機能追加をしてみます。 rochefort's twitter_helloworld at master - GitHub 1時間でツイッターサービスを作ろうにテストを書いてみた2 - うんたらかんたら日記 1時間でツイッターサービスを作ろうにテストを書いてみた - うんたらかんたら日記 下調べ twitter-authは基本はget/postのようなので http://search.twitter.com を使った場合どういう値が返るかconsoleで確認してみます。 a = me.twitter.get('http://search.twitter.com/search.json?q=ruby') >> pp a {"max_id"=>26835747788, "results"=> [{"created_at"=>"Sa
JSON DNSはDNS情報をWeb API化し、JSON/JSONPフォーマットで取得できるソフトウェア。 JSON DNSはRuby/Sinatra製のオープンソース・ソフトウェア。ITエンジニアやプロデューサなどをやっていると、ドメインに関する情報を調べる機会が多々ある。whoisで調べることもできるが、Webサービスとして提供している所も多い。 サンプル ドメイン有効期限などはもちろん、ネームサーバやAレコードに関する設定を調べたい時もあるだろう。そしてそれをWebサービスとして提供するならば使ってみたいのがJSON DNSだ。一風変わったDNSサービスだ。 JSON DNSはその名の通り、DNS情報をJSONフォーマットに変換して取得できるソフトウェアだ。Web APIとして使ってみると面白いだろう。A/MXレコードに対応し、ネームサーバの取得もできるようになっている。アクセスす
先日予告したSNBinderのオープンソース化、GitHubに簡単なREADME付きでアップロードしたのでご覧いただきたい。 https://github.com/snakajima/SNBinder SNBinderは、ひと言で言えば「ブラウザー上でView(テンプレート)とData(JSON)を結合して HTML を生成するテンプレートエンジン」である。 90年の半ばから急速に広まったインターネット。サーバー側でダイナミックに生成したHTMLページをブラウザーで閲覧するだけ、というシンプルでエレガントなアーキテクチャゆえの成功だ。しかし、ブラウザーの高機能化に伴い、JavaScriptを駆使して使いやすさを向上しようという試みが色々なウェブサイトで行われている。GMail、Google Docs、Facebookなどは良い例だ。 その方向性を究極にまで突き詰めると、サーバー側は(MVC
JSONでシリアライズされているAPIをたたくようなモデルを作ってみました。ローカルに配置しているJSONのファイルにも対応しています。 キャッシュをさせるような仕組みになっているので、多数叩くような場合にも効果的です。 modelの下に、json.phpというファイル名で保存してください。 app/models/json.php <?php class Json extends AppModel { var $name = 'Json'; var $useTable = false ; /* * jsonデータの取得 * @param string JSONファイルへのパス * @param boolean キャシュさせるか * @return mixed */ function find( $path , $cache = false ){ if ( !substr_count( $p
MemcachedみたいにキャッシュしてくれるWebサービスがあれば便利そうだと思ったので,作ってみた. おもむろにHTTPアクセスすると,JSONをくれる. set, get, delete, statsのAPIがある.使い方は上のリンク先に書いた.リンク先のコードをクリックするとその場でXHRして試せる. キャッシュなので,Webページから使って便利みたいな感じじゃなくて,何かキャッシュを利用したいプログラムから使う. Rubyから値を複数setして同じ値をgetする例.このように,複数同時に操作できる. require 'net/http' require 'open-uri' http = Net::HTTP.new('webmemcache.appspot.com') response = http.post('/set', 'pi=3.14&e=2.7&namespace=te
次はJSON形式のファイルを用意し、ダウンロードして利用してみます。次のようなJSON形式のファイルを用意しました。 { "marker":[ {"lat":41.772596,"lng":140.725261,"name":"函館朝市"}, {"lat":41.796864,"lng":140.756965,"name":"五稜郭"}, {"lat":41.772912,"lng":140.816231,"name":"函館空港"} ] } まずは読み込んだデータをeval関数を使ってオブジェクトに変換します。 function createMap(jsondata, statusCode){ var obj = eval("(" + jsondata + ")"); } 各プロパティに対する値を取り出します。これを含まれているデータの数だけ繰り返します。 function create
Ajaxの盛り上がりでJavascriptを多く使うようになってきた。 Javascriptはクライアントスクリプトなので、DBとの連携(データやりとり)をどうしようかと、悩むこともある。 例えば、Google Maps APIで大量のマーカーをプロットしたいときに、DBにマーカー情報を登録させておいて、そこから、Javascriptでデータを受け取りマーカープロットさせたい!など、JavascriptとDBを連携させたい時がある。 JavascriptとDBの連携には、AjaSQLやPEARとか、色々なクラス(ライブラリ)があるので、みんな何を使っているのかは???だが、僕は、mysql2json.class.phpを使っている。 mysql2json.class.phpは、その名のとおり、MySQLからJSON形式に変換してくれるクラス。 以下からダウンロードすることができます。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く