サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
apo-co.hatenadiary.org
意外とハマったのでメモ。 例えば、配列の各要素を数値から文字列に変換したいと思ったら、map!(collect!)メソッドを使って実現できます。 array = [1, 2] array.map!{|item| item.to_s} #=> ["1", "2"] では、これと同様のことをハッシュで行う(各キーに割り当てられた値を数値から文字列に変換する)には、どうすればよいでしょうか。 HashクラスもEnumerableインクルードしてるから、map!で実現できる? hash = {:a => 1, :b => 2} hash.map!{|key, value| value.to_s} #=> NoMethodError: undefined method `map!' for {:a=>1, :b=>2}:Hash NoMethodErrorとなってしまいました。 Rubyリファレンス
vimでrubyのテストを編集しているとき、テストメソッドごとに結果を確認しながら書き進めたいことなどないでしょうか。 ruby test/unit/hoge.rb -n test_fuga でテストメソッド単位の実行はできるけど、テストケース名が長かったりするとかなり面倒・・・ ところが、そんな悩みを解消してくれる子に出会いました。 GitHub - janx/vim-rubytest: Run ruby test in vim vimで編集中のテストをその場で実行できるプラグインです。 install $ git clone git://github.com/janx/vim-rubytest.gitで落として、 plugin/rubytest.vim を ~/.vim/ に配置するだけです。 (READMEには 'Copy all files to your ~/.vim direc
iOS SDK Hacksに載っていた内容のまとめ。 販売コンテンツの幅 Non-Consumable (非消費型) プロダクト 一度しか購入できない この型に限り、Apple側で購入情報が管理される 再度購入しようとした場合、無料でダウンロードできる 別の端末にもリストアできる 無償版から有償版へのアップグレード 電子書籍等のダウンロード etc. Consumable (消費型) プロダクト Apple側では購入情報は管理されない ダウンロードが消えてしまった場合は再購入 別の端末に移せない ゲームの武器のようなバーチャルアイテム etc. Subcription (継続課金) Apple側では購入情報は管理されない ダウンロードが消えてしまった場合は再購入 別の端末に移せない 次回請求のタイミングはアプリデベロッパ側が管理 (自動決済はされない) 月額・年額等、一定期間ごとの課金商品
RailsアプリケーションでJSONデータを返すAPIを実装し、iPhoneアプリから受信する方法をご紹介します。 環境 Rails 1.2.3 json 0.4.1 [gem] iPhoneSDK 3.1.3 json-framework 2.2.3 iPhoneアプリ json-framworkというフレームワークを使ってJSONを扱うことができます。 json-framework をiPhoneSDKに組み込む dmgをダウンロード・解凍 今回は ~/Library 下に置くことを前提とします。 プロジェクト設定 「ビルド」=>「追加SDK」の値に以下を記述します。 $HOME/Library/SDKs/JSON/$(PLATFORM_NAME).sdk 「ビルド」=>「他のリンカフラグ」の値に以下を記述します。 -ObjC -ljson -all_load 私の環境では、シミュレー
データベースとモデル リレーショナルデータベース データベース モデルオブジェクト レコード(行) ひとつのデータ フィールド(列) データの属性 テーブル レコード×フィールドの集合 ORM(Object-Relational Mapping) データベースのレコードとオブジェクトを紐付けて直感的に扱う仕組み。 DBMS(データベース管理システム) MySQL, PostgreSQL等 DBMSとネットワーク 多くのDBMSはネットワーク(TCP/IP)に対応していますので、アプリケーションとデータベースを別のサーバに設置し、ネットワークを通じてやりとりさせることもできます。 モデル モデルは、データベースのテーブルに対応するクラスです。 モデルクラスのインスタンスは、ひとつのレコードを表すオブジェクトです。 Railsのモデルは、sql文を生成してくれるfindメソッド等を使って、レコ
HTTPの基礎 HTTP::ブラウザとサーバが情報を送受信するための通信手段 リクエスト(ブラウザがサーバに送る要求) GET /ctr_name/index HTTP/1.1 (以下、ブラウザとサーバに関する情報=HTTPヘッダ) … … レスポンス(サーバがブラウザに返す応答) HTTP/1.1 200 OK (以下、HTTPヘッダ) … … URL ブラウザは、URLを解釈してサーバにリクエストを送ります。 http://localhost:3000/members/show?id=123というURLなら、localhost(サーバ名)の3000番(ポート番号)に次のようなリクエストを送ります。 GET /members/show?id=123 HTTP/1.1 … メソッド::リクエストの種類 GET 情報の要求 (WEBサーバからデータを取得) POST 情報の送信 (WEBサー
前回の内容とも関わるのですが、UITableViewCellの画像をWEBからロードする場合も、スクロールが非常に重くなることがあります。 前回同様、配列を使って回避できるかなと思ったのですが、うまく表示させることができませんでした。(もし方法があればご教示頂けると幸いです!) そこで、画像は非同期通信でロードし、ロードできたものから順次表示されるようにしました。 環境 iPhoneSDK 3.1.3 方法はこちらのページを参考にさせて頂きました。 非同期通信で画像をロードする方法について - プログラミングノート 大まかな流れとしては、UIImageViewを継承したクラスを作成し、そのクラスに画像データのロードを行わせ、cell.imageViewにaddSubviewする形となります。 ただ、私の環境で試したところ、addSubviewだけでは表示されなかった(cell.imageV
RTMの設定みたいに、ラジオボタンをポチポチ押したらrailsのAjaxアクションが実行されるコードを書いていて思ったこと。 イベントハンドラから、JavaScript関数ではなくrailsのAjaxアクションを呼び出したい場合には、remote_function メソッドを使います。 例えばこんな感じ。 <input type="radio" id="hoge" value="" onclick="<%= remote_function(:update => "fuga", :url => {:action => "piyo"}) %>" /> でも個人的には、inputタグもrailsのヘルパで書きたくて、こうしました。 <%= radio_button_tag "hoge", "", false, :onclick => "#{remote_function(:update => "
『2009年に出たコンピュータ書ならこれを読め!』に行ってきました。 他にもブログ書いているかたいるけど、備忘録も兼ねて。 なお、個人的にアンテナ引っかかったものが中心となりますので悪しからず・・・笑 まず、昨年度売れたのはやっぱりiPhone関連とtwitter関連。 iPhone SDK 3 プログラミング大全 実践プログラミング (MacPeople Books) iPhone開発するなら。OSのバージョンに合わせて改定されているのもポイントでしょうか。 ちなみに、ゲームアプリに特化したものも出ています。⇒ iPhone SDK 3 プログラミング大全 ゲームプログラミング (MacPeople Books) Twitterの本 使い方からAPIのことまで幅広く触れられている入門書。 Twitterの衝撃 140文字がビジネスからメディアまで変える 各界の著名人がtwitterについ
親コントローラで定義した before_filter / after_filter はすべての子コントローラに継承されますが、「この子コントローラではフィルタを外したい」ということがあります。 これは skip_before_filter / skip_after_filter を使って実現でき、オプション(:only / :except )も指定可能です。 class ApplicationController < ActionController::Base before_filter :hoge private def hoge … end end class ChildController < ApplicationController skip_before_filter :hoge, :only => :fuga def fuga # hogeは実行されない … end def
open_sessionで特異メソッドを定義したら、変数の持ち主に注意しましょうというお話。 次のように定義したとします。 def user open_session do |u| def u.access_to_home get '/home/index' end end end まず、これはエラーなく実行できます。 get '/home/index' assert_response :success ところが、これはエラーしてしまいます。 @user = user @user.access_to_home assert_response :success #=> NoMethodError: undefined method `success?' for nil:NilClass assert_response内で呼びだそうとした@responseは、テストを実行するコントローラがもつ
以前railsで、『あるテーブルのレコードの配列を取ってきて、その配列の順番を数値として既存フィールドに上書きする』というのをマイグレーションで実行したことがありました。 このマイグレーション(VERSION=1 とします)でやらかしていたことが後から判ったため、自戒メモです。 【problem:1】 配列をとってくるのに、モデルのメソッドを使用してしまった ↓こんな感じです。 class Hoge < ActiveRecord::Base def self.get_objects self.find(:all, :order => "fuga") end end class UpdateHoge < ActiveRecord::Migration def self.up Hoge.get_objects.each_with_index do |hoge, idx| hoge.fuga =
セッション セッション あるユーザからのリクエストを、他ユーザのものと区別するための接続情報。 通常サーバは、複数のリクエストを受け取ったとき、すべて独立したものと見なします。 ユーザのログイン状態を保持したい場合などは、ユーザとサーバの接続状態を保つ仕掛け=セッションが必要なのです。 クッキー ブラウザがハードディスクに保存する情報。 Railsでは、初めてアクセスしてきたユーザに対し、セッションIDをクッキーとして発行します。 ブラウザはこれを保存し、次回以降アクセスする際に、HTTPヘッダに含めて送信します。 サーバは、送られてきたクッキーをもとにユーザを判別します。 セッションデータの扱い Railsでは、session[:データ名]の形で簡単にセッションデータを扱うことができます。 複数のデータ名を用意すれば、複数のデータをセッションに持たせることもできます。 session[:
Ruby on Railsについて 『Ruby on Rails』とは RubyでWEBアプリケーションを開発するためのフレームワークのひとつ。 デンマーク人のプログラマ、David Heinemeier Hansson(デビット・ハイネマイヤ・ハンソン)氏がオープンソースソフトウェアとして開発しました。 フレームワーク アプリケーションを効率よく開発するためのツール・ライブラリ・設定ファイル等をセットにしたもの。 オープンソース ソフトウェアのソースコードが公開されており、再頒布が自由であること。 オープンソース - Wikipedia WEBアプリケーション WEBサイトの中でも、データの読み書き(掲示板への書き込み・商品の注文etc.)を要するサービスを提供するもの。 通常のWEBサイトはサーバ上のファイルをブラウザに送り出すだけですが、WEBアプリケーションの背後にはデータが保持さ
このページを最初にブックマークしてみませんか?
『L’Isle joyeuse』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く