こんにちは。技術部の国分 (@k0kubun) です。 3/28にクラウドワークスさんで行なわれたRails Upgrade Casual Talksで、Railsアップグレードの際にクックパッドが行なっている工夫について紹介しました。 影響範囲の予測が難しいRailsのアップグレードを安全に行なうための動作確認のやり方について参考になればということで、本記事でも改めて紹介いたします。 CookpadのRailsアップグレードの流れ Rails 4.1から4.2にアップグレードした際の例を紹介します。 CIにRails 4.2用ジョブを用意 まずはRails 4.2にアップグレードするためのrails42ブランチでテストを通します。リリースするまでこのブランチはmasterからrebaseし続けるので、リリースまでテストを通る状態を保つため、CIにrails42ブランチ用のジョブを用意しま
タイトルは釣りです。すみません。Ruby 3.0 はかなり先の将来の話なので、最終的にどうなるかはわかりません。でも Ruby 3.0 に重大な変更が予定されているのは事実なので、一緒に考えて欲しいと思います。 immutable string literal Ruby 3.0 では文字列リテラルをデフォルトで immutable (破壊的変更不可) にする、という方針が『決定』しました。(Feature #11473: Immutable String literal in Ruby 3) つまり、次のようなプログラムが動かなくなります。(当チケットから少し改変して引用) sql = "SELECT #{sec_id}, pt.path, st.doc_count " sql << "FROM #{stats_tablename} AS st " #### ←ここで例外: can't m
Railsで大きなファイルを扱う際のポイントをまとめてみました。 前提 大きなファイルとは だいたい100MB~10GBくらいのファイルをダウンロード・アップロードするのを想定することにします。 数MB程度だと、特別な工夫なしでもそれほど問題になりません。10GBを超えてくると、気をつけるべき点が変わってくるかと思います。 以下では主にサンプルとして、1GBのファイル(ISOファイルやZIPファイルなど)を想定します。 環境 以下のような環境を想定します。 Railsは4系 Nginx + Unicornのスタンダードな構成 サーバ1台のシンプルな構成(ロードバランサを使用した複数台構成については、末尾に少し記載しています) ダウンロード ファイルのダウンロード まずは、Railsアプリから大きなファイルを配信するケースを考えましょう。 たとえば、ISOファイルをサーバ内に保存しておいて、
「Rubyビジネスの戦略会議的イベントやります」をかけ声に、Ruby&Railsの技術・人材・ビジネス戦略の観点で如何に拡充させてゆくか?そのノウハウを共有する場として「Ruby&Rails BIZcon2013」は9月6日(金)、ビジネスOSSコンソーシアム・ジャパン(以下:BOSS-CON JAPAN)主催で開催された。 基調講演を中心に当日の模様をレポートする。 実行委員長を務める株式会社コンテンツワン取締役川井健史氏の「本日はRubyがビジネスでもっと使えるようなヒントが皆で見つけられれば」との開催への思いのこもった挨拶から講演の幕が上がった。 Ruby&Railsの最新技術動向と今後の予想 基調講演ではmasudriveのハンドルネームで著名な増井雄一郎氏が登壇した。 まずはRailsの歴史についての「おさらい」が語られ、CoC、DRY等々の基本コンセプトが確立されたバージョン1
Myron Marston » The Plan for RSpec 3の微妙訳です。(翻訳最中なう)だいたい翻訳しました。訳がうんこなのは勘弁(ご指摘いただけると助かります)。 2013/7/23 21:25 id:kakutani さんのツッコミをもとに、誤訳等を修正しました。ありがとうございます(〃・ิ‿・ิ)ゞ RSpec 3に向けての計画 RSpec 2.0は2010年10月にリリースされました。 リリースされてから今までの3年間、後方互換性を保ったままRSpecを継続的に改善してきました。 しかし、RSpecの2.xより古いリリースとの後方互換性を保つために残しているひどいコードの蓄積は限界点に達しています。 RSpec 2.14はRSpec 2の最後のリリースになるでしょう(今後も多分bugfixのリリースすることはあるでしょう)。 我々はRSpec 3に取り掛かっています、
例 Rails3.2.1で固定 gem 'rails7, '3.2.1' 最新のRailsを使用 gem 'rails', :git => 'git://github.com/rails/rails.git' その他 初めに生成されるファイル例 source 'https://rubygems.org' gem 'rails', '3.2.1' gem 'sqlite3' gem 'json' group :assets do gem 'sass-rails', '~> 3.2.3' gem 'coffee-rails', '~> 3.2.1' gem 'uglifier', '>= 1.0.3' end source gemで使用するライブラリが置いてあるURL 参考サイト Gemfile(5) - A format for describing gem dependencies for
環境 Windows Vista Ultimate SP2 Ruby 1.9.2p0 (2010-08-18) [i386-mingw32] DevKit-tdm-32-4.5.1-20101214-1400-sfx RubyGems 1.3.7 Rails 3.0.3 概要 rails3_acts_as_paranoidは削除日時(deleted_at)を利用した論理削除を簡単に実現できるプラグインです。Rails2系のacts_as_paranoidとは別モノ。 インストール お決まりのパターンで、 >gem install rails3_acts_as_paranoid とするか、Gemfileに記述してbundle install。ちなみに執筆時のバージョンは0.0.2です。 軽く実験 Userモデルを作成。 >rails g model User deleted_at:times
is a totally awesome idea still being worked on. Check back later.
先日ご案内していた通り2017年5月31日を持ちまして、サービスを終了いたします。 長らくご愛顧賜りまして、誠にありがとうございました。 サービス終了に伴いまして、ユーザー様からお預かりしていた個人情報やプログラム、各種データなどは、 当社が責任を持って削除いたします。 当社では様々なインターネットサービスを提供しておりますので、 機会がございましたら、 ご利用いただけますと幸いです。 Sqaleに関するお問い合わせは、こちらのお問い合わせフォームからお願いいたします。 平素はSqale(スケール)をご利用頂き、誠にありがとうございます。 2012年8月より運営してまいりました「Sqale」でございますが、2017年5月末日を持ってサービスを終了することとなりました。 ご利用中のユーザー様にはご迷惑をおかけし、誠に申し訳ございません。 現在ご利用中のプログラムやデータベースのデータにつきま
RailsコマンドとRake 最後に、Railsアプリケーション開発でよく利用するrailsコマンドとrakeについて紹介します。 railsコマンドには、new以外にもいろいろなサブコマンドが用意されています。よく使用するサブコマンドには以下のようなものがあります。 rails generate(または“rails g”) コードの生成(後で詳述)を行う rails console(または“rails c”) Railsコンソールを起動 rails server(または“rails s”) Railsサーバーを起動 Railsコンソールとは、Railsの環境をロードした状態で対話的にRubyコードを実行できるツールです。また、Railsサーバーを起動すると、アプリケーションが立ち上がり、ブラウザから利用することができるようになります。 その他のサブコマンドについては「rails -h」で
追記 まじで鳩さんのスライドでDCIについて理解したつもりになるの危険だからやめた方がいいです。せめて d.hatena.ne.jp/digitalsoul/20… を読みましょう。DCIはエンドユーザのメンタルモデルを実装に落とし込むための設計パラダイムです— Naoto Takai (@takai) December 27, 2012 ということで、以下の内容はすべて間違いである可能性が高いです。 元記事 Data - Context - Interaction いわゆる DCI が最近の人気らしい。 DCI そのものの説明をこのエントリでする気はないので、 Sapporo Ruby Kaigi の角谷さんのプレゼンなどを見るとよい。 Rails の場合、 Data はまぁ ActiveRecord / Mongoid などのいわゆる MVC におけるモデル、であっていると思う。これに
IT Fragments 情報技術系のトピックを扱う個人ブログです。プログラム制作物・システム考察・調べ物の備忘録・お勧めソフトウェア情報など このドキュメントは Ruby on Rails で用いられるアセットパイプライン解説の翻訳文です。翻訳日:2012年3月頃。整形日:2012年11月12日 導入部 このドキュメントはRuby on Rails 3.1で紹介されたアセットパイプラインの解説書です。これを見れば下の内容が分かるはずです。 アセットパイプラインがどんなもので何が出来るのかアプリケーションへの適切な組み込み方アセットパイプラインで得られる恩恵アセットパイプラインを使う前に行うべき前処理アセットをgemに梱包する方法 アセットパイプラインとは何か アセットを和訳すると『資産』。ここで言うアセットとは、JavaScriptやCSSなど、多用なHTMLに付随するファイルを引っくる
NetBeans IDE 7.2にRuby on Railsプラグインをインストールする手順を丁寧に説明します。 本稿が対象とする NetBeans のバージョンは 7.2 です。7.3については http://www.oiax.jp/rails/zakkan/how_to_install_rails_plugin_on_netbeans_7_3.html を、7.1については http://www.oiax.jp/rails/zakkan/how_to_install_rails_plugin_on_netbeans_7_1.html をご覧ください。「手順通りやったけどうまく行かなかった!」という方は、hermes@oiax.jp までメールでお問い合わせください。また、「いちおうインストールできたけど、微妙に説明通りではなかった」という経験をした方も同アドレスまで情報をお寄せいただけ
By Ilya Grigorik on December 22, 2009 WebSockets are one of the most underappreciated innovations in HTML5. Unlike local storage, canvas, web workers, or even video playback, the benefits of the WebSocket API are not immediately apparent to the end user. In fact, over the course of the past decade we have invented a dozen technologies to solve the problem of asynchronous and bi-directional communi
twitter bootstrapを更に便利に使うgemがtwitter 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
2011年05月28日20:40 カテゴリrailsmysql SQLite3→MySQLへデータ移行 Rails3のデフォDBはSQLite3なわけで、確かに早くて手軽で便利なんだけど、1点だけ問題がある。 それは、排他制御がファイルのロックであること! なんだよねぇ。 Railsだけで使っていれば問題ないんだけど、どうしても運用中にDBを弄ることが発生してしまう。 ってことでRails3既存環境をMySQLへ 変更してみる。 環境 ubuntu 11.04 Rails(3.0.7) SQLite3 MySQL5 参考 http://d.hatena.ne.jp/arcright/20100725/1279992599 参考サイト様によると、 yamlでエクスポインポすると簡単に移行できるらしい。 とありえず、MySQLをインストール $ sudo apt-get install mys
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く