開発環境のパフォーマンスチューニング - クックパッド開発者ブログ http://techlife.cookpad.com/entry/2015/10/13/101031 cookpad/chanko - GitHub https://github.com/cookpad/chanko …
![Railsアプリ開発環境の高速化](https://cdn-ak-scissors.b.st-hatena.com/image/square/1b5cdde3d9d307f829dbf9f1faf561806d7e0227/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Ff6ed081c66d94235ab92eaf05d0e9d6b%2Fslide_0.jpg%3F5801308)
Ruby 2.1.1 Rails 4.1.0rc1にて動作確認。 Rails内からSES経由でのメール送信をキューを利用した非同期配信したかったので、設定してみました。 初期設定 ResqueでRedisを使用するため、事前にインストールしておきます。 Gemfile gem 'aws-ses', '~> 0.5.0', :require => 'aws/ses' gem 'resque', :require => 'resque/server' gem 'resque_mailer' gem 'daemon-spawn', :require => 'daemon_spawn' SESの設定 事前にAmazon SESのメール認可設定やアクセスキーの取得が必要になります。 こちらなどが参考になります。 RailsのActionMailerからAmazon SESのSMTPでメールを送信する
要約 therubyracerはやめてexecjsからnodeコマンド使え。 解説 Rails 3.1 で Asset Pipeline が導入されて以来、Gemfileにgem 'therubyracer'と書く人も増えたのではないでしょうか。しかし、それがどの程度のリスクを背負っているのか自覚のない人も多いように感じます。 平時はChrome由来のJavaScriptエンジンであるv8を手軽にインストールできてスーパー便利なtherubyracer.gem & libv8.gemですが、その潜在的なリスクには震えるものがあります。最初にこれが世を騒がせたのは3年前のクリスマス前のことだったでしょうか。 v8 この問題の背景には、本質的に「v8のビルドは難しい」という点があります。雑にバージョンを選ぶとビルドが通りません。そもそもがChromeのためのものだからなんでしょうか。リリースす
Railから外れたことをやろうとして苦労したのん。 環境 ruby 2.0.0p247 Rails 4.0.1 テンプレートエンジンには haml を使用 やりたいこと コントローラ・アクションごとに固有のスタイルシート・スクリプトを用意したい。(全体で使うものだけをasset pipelineでまとめてほしい。) たとえば、"users#index" なら、application.css(.scss) と application.js に加えて以下のファイルも読み込んで欲しい。 users.css(.scss) users/index.css(.scss) users.js users/index.js とりあえず思いつく方法 (うまくいかない) application.css.scss, application.js から require_tree . の行を削除した後、applica
Devise の認証ロジックをカスタマイズしてみた。 認証ロジックを独自実装する方法を会得すると devise のカスタマイズの幅が大きく広がる。 試作した全ソースコードは https://github.com/katoy/rails-canvas にある。 test を書く config/initializers/devise.rb で 認証ロジックのメソッドを指定する。 認証ロジックを実装する。 ここでは、username で login 制限をつけてみた。 user_02, user_04, user_06, user_08 をログイン禁止にする。 (実際にはこんな制限をつけることはないだろうが、ロジックを簡単にする為に。) $ rake db:fixtures:load で user_01, user_02, ... を登録できます。 (定義される内容は test/fixtures
Trabe ya no escribe aquí. Puedes encontrarnos en nuestra publicación en Medium: medium.com/trabe. Devise is great. It simplifies lots of tasks related to resource management: authentication, registration, confirmation, etc; and it does it in a clean and highly configurable way. But it is only this great if you are managing your resources locally. Devise has adapters only for models backed up with
Railsで簡単に可逆暗号をする方法 情報が古くなったため、rails4.2, rails5.0, rails5.1, rails5.2, rails6.0 で変更点確認し更新 使い方 ActiveSupport::MessageEncryptor を利用することで簡単に可逆暗号ができる key_len = ActiveSupport::MessageEncryptor.key_len secret = Rails.application.key_generator.generate_key('salt', key_len) crypt = ActiveSupport::MessageEncryptor.new(secret) encrypted = crypt.encrypt_and_sign('Qiitaきーたキータ') # => "Adp1SPOkYRqLgTMoAlcyEganoi
投稿推進部の外村(@hokaccha)です。 クックパッドブログの開発でRails上にECMAScript6などのモダンなJavaScript開発環境を導入した経験を元にノウハウを紹介したいと思います。 RailsはSprocketsというgemでJavaScriptやCSSをコンパイルする仕組みが提供されています。Sprocketsによるasset管理の仕組みは非常によくできており、AltJSのトランスパイルやファイルの結合、minifyなど、assetのコンパイルに必要な機能を一通り備えています。 しかし、JavaScriptにおけるモジュールの依存関係の解決や、ライブラリの管理などについてはモダンなJavaScript開発と乖離してきているのが現状です。そこで、Railsでも以下のようなことを実現できることを目標に環境を作りました。 ECMAScript6のシンタックスを使う モジュ
I recently ran into a situation where I wanted to store some user editable data in a JSON hash on an ActiveRecord model. The application is storing information about wine, which can have many different varietals. A wine can be made up of many different varietals, and each varietal is a percentage of the final wine. I'll also be storing the name and percentage of the varietal on each wine. ActiveRe
RailsのAsset PipelineとPrecompileをNode.jsのみで処理できるgulp-sprocketsを作った 仕事ではRailsアプリを書いていて、JSやCSSなどのフロントエンドはRailsのAsset Pipelineの仕組みに則ってビルドしてる。 普通にRailsアプリ作ってると普段Sprocketsについて特に意識しないと思う。 Sprocketsはそこが凄くて、あまり考えなくてもドキュメント通りにやってれば、必要なAssetを結合できて、リリース時は変更がなければブラウザキャッシュから、変更があれば 新しく読み込まれるみたいなことをやってくれる。 なんだけど、もうそろそろ新しい機能はES2015で書きたいよねという人が増えてきた。 とはいえSprocketsは独自のディレクティブ以外は使えなくて、SprocketsWayから外れると途端に脆い。 ES2015
I remember exactly when and why I started learning Ruby and Rails. It was right after I saw the famous “blog in 15 minutes” video by DHH. This quick, clumsy demo of the new web framework, written in an exotic programming language, was like a breath of fresh air – a comforting, elegant answer to all the little annoyances I was constantly dealing with in PHP. I immediately wanted to know more about
タイトルの通りですが、作りました。 sinsoku/pretty_validation これは何? DBのスキーマからvalidationを自動生成します。 validates_presence_of (NOT NULL制約から生成) validates_numericality_of (columnの型から生成) validates_uniqueness_of (UNIQUE制約から生成) の3つに対応します。 使い方 いつものようにGemfileに追加し、 bundle install してください。 gem 'pretty_validation' バリデーションファイルを生成する方法は2つあります。 rake db:migrate の後に自動で生成される rake validation:generate を手動で実行する バリデーションのファイル例 例えば、こんなマイグレーションファ
最近仕事でRailsのコードレビューをする時間が長くって、いろいろ指摘するんですが、 Railsって「Railsチュートリアル」には書いていないのに覚えないと仕事にならないこと多すぎだなと気付かされます。 どこでどんなふうにすれば、プロになろうとしている人が最短距離で知識を獲得できるかはわからないですが、 今思っている特に大事だなと思うことつらつらと書いていきます。 😀 プログラミングの重要な要素まず、Railsの前にプログラミングで全般的に特に重要と思っている要素を紹介します。 - リーダブルなコード - ネーミングルールについて - 言語・フレームワークのルール - 変数のスコープについて - プロジェクトの設計思想 - オブジェクト指向・コードの再利用性 - 正しいテストケースを作る プロジェクトによって変わるので、すべては書きませんが、ぜひ意識してどこを学ぶべきかを考えてみてくだ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く