タグ

Railsに関するyogasaのブックマーク (192)

  • twitter bootstrap railsを使ったら職が見つかり彼女も出来て背も3センチ伸びました。 - ppworks.jp

    twitter bootstrapを更に便利に使うgemtwitter bootstrap railsです。 railsアプリを作りましょう。 rvmでgem set作ります。 rvm --create 1.9.3-p125@tbrsample railsアプリ生成します。 gem install rails --no-ri --no-rdoc rails new tbrsample gemを指定しましょう。 Gemfileのgroup :assetsに追加します。 cd tbrsample vim Gemfile gem "twitter-bootstrap-rails" どん bundle install --without=production bootstrapをgenerateしましょう。 必要なjsやcssをapp/assets配下に配置します。 rails g bootst

    twitter bootstrap railsを使ったら職が見つかり彼女も出来て背も3センチ伸びました。 - ppworks.jp
  • 最近やってるRailsプロジェクトのテスト方法 - #詰んでる日記

    Railsエンジニアになってから1年半くらいが経ち、社内のRailsプロジェクトを全部で5つくらい触って、今やってるAbilie*1でようやく人並みにテストを書いてる気がしてきたので、現時点でやってるテストの方法をまとめておく。 テストのルール的なの rspecでは必ずモデルのテストは書くようにしてる。ヘルパーも大体書いてるけど、コントローラやルーティングのテストはあまり書いてない。 というのも、コントローラーのコードを極力短くしてモデルを太らせているのでコントローラのテストはあんまり意味が無い気がしていて、その代わりにCapybaraでテストを書いておけば十分なんじゃないかなと思ってきたから。Capybaraは書いてるので、そういう意味では書いてるとも言える。 社内の管理者だけが使える管理画面も作ってるけど、そっちはテストあんまり書いてない。ここは動かなくなっても一般ユーザーには影響が

    最近やってるRailsプロジェクトのテスト方法 - #詰んでる日記
  • [Rails]はじめてのRailsでWebサービス作ってみた - ギークに憧れて

    Twitmemo ここ一ヶ月ほど某社でRailsの勉強をさせて頂いていて、なんか作れーって言われたのでWebサービス作ってみました。 Twitterユーザーへフォローした理由やメモを追加できるサービスで、Twitmemoといいます。過度な期待はせず使ってみてください。 作った理由2/4現在、自分のフォローは1030人弱。300人くらいまでは良かったが、さすがにこの人数になると「あれ?こいつフォローしたっけ…」って奴が出てくる。最近はイベントにいってもメールアドレス教えるのがダルくてとりあえずTwitterアカウントを教える、というパターンが多いので、ある程度は把握しとかないとリアルに支障が出るかなーという危機感があった。そういうのを良い感じにメモできるサービスが欲しかったので作った。プラス、自分がどういう評価されてるか知れたらFavstarっぽくてうけるかなーという感じ。 以下、サービスを

  • ずぶの素人がRails開発できるようになるために必要な5つのこと

    1. Rails 2012-01-31 kchinda@aiming-inc.com (a.k.a. @ckazu)

    ずぶの素人がRails開発できるようになるために必要な5つのこと
  • Rails 3.2 リリースノートを翻訳してみました

    こんにちは、ほりいです。風邪が流行っていて体調管理が大変なシーズンですね。 先週 “Rails 3.2.0 がリリースされました”:http://weblog.rubyonrails.org/2012/1/20/rails-3-2-0-faster-dev-mode-routing-explain-queries-tagged-logger-store ね。 Rails を使った Web 開発チームでは 3.2 を使い始めていますが、社内でも結局どう変わるの? という声がありましたので、勉強がてらみんなで “Ruby on Rails 3.2 Release Notes”:http://edgeguides.rubyonrails.org/3_2_release_notes.html を翻訳してみようという試みを行いました。その成果を公開したいと思います。 注意書き: * 1章「Upgra

    Rails 3.2 リリースノートを翻訳してみました
  • Railsの誤解:CRUDはRESTじゃない! - 杉風呂2.0 - A Lifelog -

    以下はNick Sutterer氏が2010年10月28日に自身のブログに投稿した、"Rails Misapprehensions: CRUD is not REST! "の翻訳です。人の許可を得て掲載します。 Rails Misapprehensions: CRUD is not REST! http://nicksda.apotomo.de/2010/10/rails-misapprehensions-crud-is-not-rest/ RailsとRESTについて調べている間、二つのことがよくわかった。 RailsでRESTがどうなっているのか、他と比べて、明解で、基礎的で、「印刷された」解説を見つけにくい。数千のスクリーンキャストを見てきたが、この素晴らしいガイドが一つあるだけだった。 みんなCRUDとRESTを混同している とりわけ後者は僕を困らせたが、あるチームをコーチすると

    Railsの誤解:CRUDはRESTじゃない! - 杉風呂2.0 - A Lifelog -
  • RailsのURL設計を考えてみる(6) 設計の選択肢 - ぶろぐ。@はてな

    今回は直接Railsとは関係ないのですが、先日こういうページを見つけました。 http://redrata.com/restful-uri-design/ これは2009年に書かれたもののようですが、URL設計に関する重要な考え方がいろいろ書かれています。 その中に、このブログのシリーズの(4) スラッシュと「持っている」関係や(5) Railsのリソースパターンの前段階になるような“Choosing a URI schemes for resource hierarchies”という話があったので、かいつまんで紹介したいと思います。 リソースの階層に対して、どういうURLを設計するか? 前提として、設計するWebサイトには、conversation(会話)というリソースが複数あり、それぞれのリソースはユニークなIDで区別されるとします。(IDは数字とは限らない識別子) /conversa

    RailsのURL設計を考えてみる(6) 設計の選択肢 - ぶろぐ。@はてな
    yogasa
    yogasa 2012/01/03
  • 安全なWebアプリを作りたければ新しいフレームワークがオススメ | 水無月ばけらのえび日記

    例えば,Railsの入力のセキュリティ対策はセキュアであるとは言えません。Railsのバリデーションは「データベースにデータが保存される前」に行われます。データベースにデータを保存する必要がないようなアプリケーションの場合,入力のバリデーションをフレームワークとして行う仕組みになっていません。来入力はデータベース利用の有無に関わらず入力を受け入れた直後に行うべきです。多くのフレームワークがRailsの影響を受け同様の仕様となっています。Railsが脆弱な仕様を採用したことは不幸なことだったと思います。 ……。 まず、バリデーションはセキュリティのためにする処理ではありません。たまたまセキュリティの役に立つこともありますが、役に立たないこともあります。たとえば、問い合わせフォームに文の入力欄があり、任意のテキストが入力できて、DBにはText型 (任意の長さの任意のテキスト) として保存

  • さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)

    先日のももクロハッカソンで出会った wantedly を作ってる仲さんが と言ってたので、面白そうなので wantedly を速くしてみました。 wantedly ちなみにデータが数百万オーダーもなさそうなのに、どのページもログインすると2-5秒ぐらいかかっていたので、確実に速くできそうだなぁという感覚はやる前からありました。 アプリケーションサイドのチューニング 初心者*1にありがちな問題として SQL に適切にインデックス張ってない キャッシュすべき場所をキャッシュしていない 無駄なデータを引きすぎてる ことがよくあります。ので順に実装を見ていきました。 SQLに適切なインデックスを張ってない 張ってありました!びっくり!\(^o^)/ キャッシュすべき場所をキャッシュしていない Facebook API を利用したアプリケーションなんですが、ユーザのデータの取得を毎回馬鹿正直に HT

    さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)
  • 素人がWebサービスを作ってみて分かった9つのこと:Rails Hub情報局:エンジニアライフ

    こんにちは、@IT編集部の西村賢です。IT系のオンラインメディアで編集・記者をしております。タイトルに「ど素人」と書くと、ちょっと嘘になるので「素人」と書きましたが、素人がWebアプリを作ってみた体験談と感想を書いてみたいと思います。「オレもプログラミングを勉強して何か作ってみたい!」と考えている人や、「自分でサーバを借りて何かやってみようと思っていたんだよね」という人の参考になれば幸いです。 去年の夏、Webアプリケーション開発フレームワークのRuby on Railsのことを調べていて「面白そうだな」と思い、ドキュメントに従ってサンプルアプリをいくつか作ってみました。作ったり壊したりしている間に、こう思いました。 「あれ? これなら自分が欲しかったサービスが作れちゃうんじゃないの?」 で、「Worklista」(ワークリスタ)という名前のWebサービスを作りました。3カ月ほど前から親し

    素人がWebサービスを作ってみて分かった9つのこと:Rails Hub情報局:エンジニアライフ
  • Railsの人気テストフレームワーク6選!

    前回は具体的なWebアプリを例にして簡単なコードレビューをしました。今回からは、テストを使ったリファクタリングについて解説していきます 少し時間が空いてしまいましたが、前回は具体的なWebアプリを例にして簡単なコードレビューをしました。今回からは、そのWebアプリに対してテストを書いてリファクタリングする具体的な方法について解説していきます。 今回はまず、Ruby on Railsで人気のあるテストフレームワークの数々についてご紹介します。 最近のテストフレームワークトレンド Hamlの作者として知られるHampton Catlin氏が行った「Hampton's Third Ruby Survey, 2010」の中に、テストに関するいくつかの興味深い結果があります。好きなテストフレームワークは何ですかという質問に対する答えをグラフにすると以下の通りです。 これを見ると「ビヘイビア駆動開発(

    Railsの人気テストフレームワーク6選!
  • Twitterが、Ruby on RailsからJavaVMへ移行する理由

    オライリーが主催するイベント「Open Source Convention 2011」が7月25日から米国ポートランドで開催されました。 その中で、TwitterがなぜRuby on RailsベースのシステムをJavaVMベースへ移行しようとしているのかを解説したセッション「Twitter: From Ruby on Rails to the JVM」が行われ、ビデオが公開されています。 13分程度の短いセッションのポイントをまとめて紹介します。 世界最大のRuby on RailsによるWebサイトをJavaVMへ移行 Twitterのアプリケーションサービスグループ、Raffi Krikorian氏 Twitterは世界中からのツイートをリアルタイムで扱っている。リアルタイム処理が、ツイッターにおけるもっとも難しい処理だ。 Twitterは、おそらく世界最大のRuby on Rail

    Twitterが、Ruby on RailsからJavaVMへ移行する理由
  • Railsエンジニアならこれだけは知っておけっていう便利メソッド - (゚∀゚)o彡 sasata299's blog

    2011年07月26日13:29 Ruby Railsエンジニアならこれだけは知っておけっていう便利メソッド Object#presence と Object#try という便利なメソッドがあることをご存知ですか?この2つのメソッドはとっても便利なのでちょっと紹介してみます。 Object#presence メソッド これは以下のような定義となっています。 def presence self if present? end present? メソッドというのはみんな大好き blank? の反対のメソッド (!blank?) です。 つまり、nil, false, [](空配列), {}(空ハッシュ), ""(空文字列), " "(半角スペースだけの文字列)であれば false、それ以外であれば true になります(blank? って半角スペースだけの文字列を true と判定するの知って

  • ActiveRecordの更新系操作

    前回はActiveRecordを使った参照について解説しましたが、今回は登録、更新、削除などの更新系を中心に見ていきます。 前回の記事では、Ruby on Railsのモデル層を担当するActiveRecordの概要と参照系の操作について解説しました。今回は、登録、更新、削除などの更新系の機能を中心に見ていきます。 登録・更新の際には、モデルに不正な値が保存されないようにデータをチェックして、問題があれば保存しないようにする「検証」(Validation)の仕組みが走ります。この検証機能の背後には、ActiveRecordのコールバックという仕組みがあります。コールバックを使うことで、登録、更新、検証、削除処理の前後に様々な処理を追加できます。今回と次回の2回にわたって、ActiveRecordの更新系操作のやり方とともに、検証、コールバックについて詳しく解説していきます。また、検証メッセ

    ActiveRecordの更新系操作
  • テストコードを作らない文化が浸透している現場へRuby/Railsが導入された結果への対策を考えてみる, tDiary 3.0.2 リリース - 会長@腹部日記(2011-04-29)

    _ テストコードを作らない文化が浸透している現場へRuby/Railsが導入された結果への対策を考えてみる まず、導入された結果は以下のようになっております。信じられないものもありますが、事実です。 1. マージが頻繁に行われる開発中はNoMethodErrorや文法エラーが続出。必要なコードのマージ漏れまで発生 2. 修正の度に人力テストが必要となり、コスト増大 3. これまで以上に責任論が追求される現場となる 4. コスト増加を恐れるあまりリファクタリングはおろか、巨大な迂回処理やコピペが横行する プロジェクトには、以下のようなテストコードを作(らない|れない)様々な原因があります。 問題分類 現場への影響

  • Twitter、検索結果表示が“3倍速く”なったと発表――フロントエンドの切り替えで

    Twitterは4月6日(現地時間)、Twitterでの検索結果が表示されるまでの速度がこれまでの3倍速くなったと発表した。 同社は2010年の春、急成長する検索ニーズに対処するために検索エンジンを書き換え、リアルタイム検索エンジンを立ち上げた。その際にバックエンドをMySQLからJavaベースのテキスト全文検索エンジンLuceneに移行した。また先週、フロントエンドRuby on RailsからBlenderと呼ばれるJavaサーバに切り替えた。待ち時間の短縮は、こうした取り組みの成果だという。 Twitterでは1日に10億以上のクエリに対応している。Blenderを導入する前の週、日では「#tsunami」というハッシュタグが膨大なクエリを発生させ、検索待ち時間に影響を与えた。Blenderの導入後、800ミリ秒だった待ち時間は250ミリ秒に短縮され、フロントエンドサーバのロー

    Twitter、検索結果表示が“3倍速く”なったと発表――フロントエンドの切り替えで
  • WEB+DB PRESS vol.61 Rails3テスト最前線がすばらしい - tech-kazuhisa's blog

    WEB+DB PRESS vol.61の「Rails3テスト最前線」という記事がかなり良かったので、注釈を交えて紹介したいと思います。 何が良かったのか? 自分はRails2系でTest::Unitを実践していました。AutoTestとYAMLによるデータ投入でおおむね満足していましたが、次のポイントが気になっていました。 YAMLによるデータ投入は重複が多いのでコピペでデータを作成していた。 Test::Unitはログイン処理など共通の処理をくくり出すのが難しかった。 Viewのテストの方法が分からなかった。 しかしこの記事で気になる点がスパッと解消されました。私と同じような人はこの雑誌の記事が役に立つと思います。 ちなみに私はMacのSnow Leopard上でRuby1.9.2を使ってこの記事の内容を試しました。1.8.7を使う前提で書かれている箇所もあるので注意してください。(後で

    WEB+DB PRESS vol.61 Rails3テスト最前線がすばらしい - tech-kazuhisa's blog
  • MVCとRailsの基本構成を学ぼう

    Web開発フレームワークとして人気の高いRuby on Railsの最新版、バージョン3を使ってWebアプリ開発の基を学びます。 人気のフレームワークでWeb開発を学ぶ Ruby on Railsは、いまやWebアプリケーションの開発フレームワークの有力な選択肢の1つとなっています。Ruby以外の言語のWebアプリケーションフレームワークも少なからずRailsの影響を受けているので、現在Rubyを使っていないエンジニアにとっても、Railsを知ることは大いに参考になるはずです。もうすぐRails3認定試験が格的に開始されるということもあり、この連載では、試験範囲の流れに沿って、Railsの基礎についてご紹介していきます(ただし、必ずしも試験対策というわけではありません)。 今回、連載第1回として記事では、Railsを理解する上で基となる考え方であるMVCについて説明した後、Rail

    MVCとRailsの基本構成を学ぼう
  • Rails勉強会@東京第60回に参加してきました - 基本へ帰ろう

    Rails勉強会@東京第60回に参加してきました。学んだことをメモします。 性能プロファイラ 笹田研の学生さんによるリアルタイムプロファイラの紹介がありました。「リアルタイム」なのが特徴です。rdocを実行してそのプロファイラをざーっと画面に出してデモしていました。普段リアルタイムで監視画面をじーっと見るということは、なかなか少ないとは思いますが、テストの時や裏でずっと実行していて「しきい値」を設けてアラート出すとか、スナップショットを定期的に取ってグラフ化するなどの方がWebアプリを作る側としては実用的かもと感じました。しかし、私は普段はアプリのプロファイリングというもの行っていないので、RubyProf等を使って一度やってみようと思いました。 kaminari a_matsudaさんによるkaminariについての直々のプレゼンです。とても貴重なプレゼンでした。kaminariの基

    Rails勉強会@東京第60回に参加してきました - 基本へ帰ろう
  • Rails-1対多の関係サンプル - ITの仕組みまとめサイト

    ITの仕組みまとめサイト データベースの仕組みとRubyプログラムの整理用サイトです トップページページ一覧メンバー編集 Rails-1対多の関係サンプル 最終更新: celestianglobe 2010年12月03日(金) 23:43:23履歴 Tweet 学校をサンプルにして、担任教師1人と生徒多数という関係を表現してみます。 とくに、この関係を利用して次の2つの機能を実現します。 生徒からみて担任教師をドロップダウンで選択する。 教師の詳細画面で生徒数を表示する。 コマンド まずは次のとおりコマンドを実行する。D:\rails>rails new sample1 D:\rails>cd sample1 D:\rails\sample1>rails g scaffold teacher name:string D:\rails\sample1>rails g scaffold stu

    Rails-1対多の関係サンプル - ITの仕組みまとめサイト
    yogasa
    yogasa 2011/02/19