2. 一覧表示機能

それでは、サーバ連携を使用した、一覧表示機能の開発を行います。ここでは、http://{IPアドレス}:3000/rosters.jsonにGETアクセスを行うと、名簿データがJSON形式で送られてくるものとします。

 a.    コントローラの修正

app/RosterServer/roster_server_controller.rbファイルをRhoStudio上で開いてください。

 

7行目に以下を追加してください。

 

7 | SERVER_ADDRESS = "http://{IPアドレス}:3000"

 

ここでは、作業を行っているマシンのIPアドレスを設定します。

つぎに、11行目をコメントアウト(行の先頭に「#」をつける)し、12行目に以下を追加してください

 

12 | http = Rho::AsyncHttp.get(:url => “#{SERVER_ADDRESS}/rosters.json”

13 | @rosterservers = http[“body”].map{|r|RosterServer.new(r)}

  

image008.jpg


編集が終りましたら保存をしてください。

上記の変更の説明をいたします。

12行目で、Rho::AsyncHttp.getメソッドでサーバへGETアクセスを行っています。

13行目で、サーバから受け取ったデータ配列の要素をループさせ、RosterServerオブジェクトにして@rosterserversに代入しています。

 b.    ビューの変更

次に、app/RosterServer/index.erbファイルを開いてください。

18行目、19行目を以下のように変更してください。

 

18 | <!--<a href="<%= url_for :action => :show, :id => rosterserver.object

       %>">-->

19 | <a href="<%= url_for(:action => :show, :id => rosterserver.id) %>">

 

image010.jpg


18行目のurl_forメソッドでリンク先へidパラメータで渡す値を、19行目でサーバから取得したIDに変更しています。

一覧表示機能は以上で完了です。

システム工房エムのサイトへのリンク

住所〒690-0017 島根県松江市西津田3-2-3 TEL.0852-23-8590 FAX.0852-23-8591
Copyright 2008-2010 System Maker M,All right reserved