注意 現在ObjectiveResourceは iOS4.0 に対応できてないようです。 詳しくは こちら iPhoneはゲームのようにiPhoneだけで完結するアプリもありますが、たいていのアプリはサーバーと連携することで大きな可能性を得る事ができると思います。 その際にサーバー側のシステムとiPhone側のサーバーとの通信をどうするかは悩みどころですが、ObjectiveResource + Ruby on Rails を使うと本当に簡単にサーバー側と通信を行う事が出来ます。 サーバー側は Ruby on Rails ご存知のように、Ruby on Rails を使う事で高機能なWebサイトが短期間で構築できます。 例えば、上の画像のようなToDo を管理するようなWebアプリは 以下の様にコマンドを入力するだけで出来てしまいます。 % rails todo % cd todo % .
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日本 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直
Ruby勉強会番外編っぽくスパイダリング講座on Webをやるとか書いてたので、深夜Ustreamでやってみました。結果としては教えるより、教えてもらうような感じになったけどねwww。 hpricotの付近からujihisaさんとid:beatinaniwaさんに教えてもらいました、ありがとうございました。そういうわけで勉強したことをアウトプットとしてまとめておきたいと思います。「スパイダリングって何?」っていう人はだまされたと思ってやってみるといいと思うよ!! 簡単バージョン 基本的なライブラリを使ってやってみたバージョン。これはソースっぽいのをだだっーと出力するだけで、使いものになるかはあれだけど、スパイダリングの感覚っぽいのはつかめるんじゃないかと思います。 require 'net/http' require 'iconv' Net::HTTP.start('www.yahoo.c
Ruby on Rails を用いて、インクリメンタル検索のできる英和辞書webアプリ を作ってみました。インクリメンタル検索とは、検索語句の入力途中の文字列 から随時検索を行い、結果を動的に書き換えていく検索のことです。対象読者 は基本的な Rails の知識がある人としています。 データベースは SQLite を使用しますが、テーブル構造は単純なので 他のデータベースに変更するのは容易です。 dictアプリケーション用ディレクトリの作成 まずアプリケーションのディレクトリを作成します。アプリの名前は dict と します。 % rails dict 辞書データ 以下の作業は、すべて dict アプリの db ディレクトリ (dict/db) で行いま す。 辞書データは、 GENE95辞書 を用います。このページよりデータをダウンロードし、展開すると gene.txt というテキストフ
RJSなら数行のRubyコードでAjaxアプリを作成できる:Ruby on RailsのRJSでかんたんAjax開発(後編)(1/4 ページ) ほんの数行のRubyコードで、Ajaxアプリケーションを 今回は、前回の「かんたんAjax開発をするためのRuby on Railsの基礎知識」に引き続き、Ruby on Rails(以降、Rails)が提供するRJSを使用したAjaxの開発の仕方について解説しています。 まだRailsを使ったことがない方でも大枠の理解ができるように、前回はRuby言語やRailsの基本部分を解説しました。後編である今回はいよいよ本題のRJSの解説をメインに進めていきます。RJSを利用すれば、ほんの数行のRubyコードを書くだけで、非常に簡単にアプリケーションをAjax対応できることを解説していきます。 もう一度、サンプルをおさらい 今回のサンプルプログラム(拡大
フォームに入力した内容をサーバー送信する時、送信ボタンを押してから処理に時間がかかると不安になる。(特にファイルをアップロードする時など。)ユーザーによっては、2回、3回と送信ボタンを押しまくるかもしれない...。不要な操作は、サーバーにも負荷がかかるし、きっとユーザーもイライラしているはず。そんな時は、submit_tagの:disable_withオプションで手軽に解決できた! 以下のように:disable_with=>'アップロード処理中...'と設定しておけば... ボタンを押すと、操作できない状態に変化して、二重送信が防止できる。 同時にボタンの表示が[アップロード処理中...]に変更され、ユーザーにフィードバックできる。 <%= start_form_tag({:action => 'create'}, :multipart => true) %> <%= render :pa
form_tagとform_forの引数がいつもごっちゃになってしまうのでメモっておきます。 form_tag フォーマット form_tag(url_for_options = {}, options = {}, *parameters_for_url, &block) 例 (2008/7/22修正しました) form_tag { :controller => "user", :action => "update" }, { :method => :put } do # ... end form_for フォーマット form_for(record_or_name_or_array, *args, &proc) # ... 例 初期値を格納してあるオブジェクト名と、取得したいモデルオブジェクト名が一緒な場合はこう。 form_for :user, :url => { :action =>
簡単な検索フォームを作ってみたので、メモしておきます。 作成したviewのフォームの記述を以下のようのform_forヘルパーを使用して作ってみました。 <table id="search"> <% form_for (:conditions, @conditions, :url=>{:controller => '/customer/search', :action => 'result'}, :html => {:method => :get, :id => 'select' } ) do |f| %> <tr> <td> <%= f.select :limit, @limits.collect {|m| [m.name, m.value] } %> <%= f.text_field :keyword %> <%= f.submit :submit, :value=>'検索' %> <
Rails3からの変更点でハマったのでメモ。 Rails2ではformをAjaxで送信するにはform_remote_tagを利用していた。 これがRails3では以下のように:remote => trueを指定することで実現する。 <%= form_tag(url_for(:action => 'create'), :remote => true, :id => "result_form") do %> <% end %> 今は主にjQueryを使って開発している為、デフォルトで扱うjavascriptをjQueryに変更する。 Gemfileに以下記述 gem 'jquery-rails' bundle installして関連ファイルをgenerate $ bundle install $ rails g jquery:installjquery.jsとrails.jsを読み込むように
Hash#sort † とりあえず、ri Hash#sortすると少し解説有り。 -------------------------------------------------------------- Hash#sort hsh.sort => array hsh.sort {| a, b | block } => array From Ruby 1.8 ------------------------------------------------------------------------ Converts _hsh_ to a nested array of +[+ _key, value_ +]+ arrays and sorts it, using +Array#sort+. h = { "a" => 20, "b" => 30, "c" => 10 } h.sort
どこかのサイトでみて、「お、かっこいい!」とか思った多次元配列の初期化をやっていて、ハマった・・。 そのコードはこちら↓ # 多次元配列確保したい. height = 24 width = 32 array = Array.new( height, Array.new( width, 0 ) ) C言語とかでいうところの、 int array[height][width]; みたいな配列を確保して、中身はすべて0で初期化しようとしたのです。見た瞬間、「さすがRuby!1行できれいに初期化コードが書ける!」と真似してみたのです。 でもこのコードでは、今回意図している動作はしないのだ! このコードを使うと、例えば、次のようなことになってしまうのです。 # 意図した挙動とは..と確認するコード. height = 24 width = 32 array = Array.new( height,
Rubyでは直接多次元配列を下記のように扱うことは出来ないようです。 a = Array.new(10,5) のように10行5列の配列を作ろうと思うと、上のやり方では出来ない。ので、ちょっと面倒ですが、1次元配列の中に1次元配列を入れてやるように次のようにやればできるようです。 a = Array.new(10) a.each_index{ |y| a[y] = Array.new(5) } 初期化したければ、 a = Array.new(10) a.each_index{ |y| a[y] = Array.new(5, 0) # 0で初期化 } とします。 このようにすればあとは a[i][j] というようなアクセスが出来るようになります。
2009年05月28日 Rubyで多重配列やハッシュをソートする 多重配列やハッシュのソートの仕方をよく忘れるのでメモ。 [['Tokyo',10],['Nagoya',2],['Sapporo',50],['Fukuoka',30]]こういう多重配列について、内側の配列の要素でソートしたいとする。 多重でない配列であればソートメソッド一発で何も苦労はない。p [10,2,50,30].sort実行結果[2, 10, 30, 50] 多重配列の場合、単純にソートメソッドを実行すると1個目の要素でソートされるようだ。p [["Nagoya", 2], ["Tokyo", 10], ["Fukuoka", 30], ["Sapporo", 50]].sort実行結果[["Fukuoka", 30], ["Nagoya", 2], ["Sapporo", 50], ["Tokyo", 10]]
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く