You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Railsアプリで検索機能を実装するケースは非常に多いと思います。 簡単な検索であればwhereとLIKEを使って書けますし、やや複雑なものもeverywhereが便利ですが、ここではもっと複雑な条件の組み合わせを実装する時に便利なransackを紹介します。 基本 searchメソッドで条件を指定し、resultメソッドで結果を返します。 resutはActiveRecord::Relationを返すので、SQLは普通のActiveRecord同様遅延評価されますし、さらにwhereを繋げたり、kaminariでページングしたりすることもできます。また、to_sqlで発行されるSQLを確認することもできます。 もう少し詳しく書くと、searchはModelまたはActiveRecord::RelationをレシーバにしてRansack:Searchを返し、Ransack:search#r
はじめに まずどうやってひな形を作るか。ですがこれは bundle gem という、bundlerがデフォルトで提供しているコマンドを利用するのが一番簡単です。 今回はhello_worldという名前でgemを作るので、bundle gem hello_worldとします。 実行すると、このような形でひな形が生成されます。これを使ってgemを開発していくことになります。 gemspec Gemの作成でまず大事になるのが gemの名前.gemspec というファイルです。例えば上記で生成したひな形だと # coding: utf-8 lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) require 'hello_world/version' Ge
背景 先日、RubyKaigi 2015 に参加してきました 終了後、↓のような感想エントリを読んで、そうだよなーと思いました RubyKaigi 2015(3日目) ただのにっき ところで今回のRubyKaigiで「あ、これはまずいな」と思ったことに「機械学習系の発表がひとつもなかった」点がある。昨日のパーティでも話題にあげてみたところ、危機感を抱いている人は少なからずいた印象だけど、根っこをたどると数値演算ライブラリの整備をずーっと放置してきたことがあるだろう。気がつくと数値演算方面ではPythonに大きく水をあけられていて、いまやその応用である機械学習では(LLの中では)Pythonの独壇場だ。Webアプリケーションの分野で一世を風靡した気になってる間に、いま一番ホットな領域がまったく話題にならない言語になってしまった。 というわけで、Ruby でデータセットを弄る Gem ってのが
皆さん、こんにちは。Misocaチームの @yusuke_kokubo です。 Active Merchantというgemをご存知でしょうか? Misocaはクラウド上で請求書をつくって送れるサービスです。請求書はお金を支払ってもらうためにつくるものなので、支払いもWeb上でできたら便利ですよね。 そこでMisocaには請求書に支払い機能を持たせられる「Misocaペイメント」という機能があります。 これはActiveMerchantによって実現されています。 本記事ではActiveMerchantの使い方として一番ポピュラーで簡単なPayPal支払いをご紹介したいと思います。 (PayPalについての基本的な知識は持っている、という前提で書きます。IPNって何?という方はまずはこちらをご覧ください。 即時支払い通知(IPN) - PayPal) ここでは PaypalExpressGat
OAuth って言われたら、大体の人は Facebook でログインとかを選ぶと、「〜があなたの以下の情報にアクセスしようとしています」みたいな文章が出てきて OK するやつを想像すると思います。 実は OAuth には、上記のフロー以外にも、アプリケーションにユーザのリソースへのアクセスを認可するためのフローが存在します。 今回 OAuth と doorkeeper についていろいろ調べたので、備忘録も兼ねて各認可フローを簡単に説明しつつ、doorkeeper gem を使って OAuth の各認可フローを試してみます。 補足: - 本投稿中の OAuth とは、すべて RFC 6749 で定められている OAuth 2.0 のことです。 - 理解不足&説明を簡単にするために正確でないことがあるかもしれませんので、詳細については参考に挙げたページをご確認ください。OAuth に詳しい方は
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
RSpecの基本について理解している人を対象に、「RSpecのテストに必要なGem、モデル、コントローラー、Feature(Capybare)、JavaScriptなどの基本的なテストの書き方」についてまとめました。 下記のサイトも参考になります。 Factory Girl Rails のチートシート RSpec/Capybara/Capybara-Webkit のレシピ集 動作環境 Mac OS X 10 Ruby 2.1 Rails 4.1 rspec-rails 3.1.0 shoulda-matchers 2.6.2 factory_girl_rails 4.4.1 capybara 2.4.1 Phantomjs 1.9.8 poltergeist 1.5.1 capybara-webkit 1.3.0 database_cleaner 1.3.0 目次 UTからE2Eテストのた
rails server したときに `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)と出た時の対処法(といっても公式ドキュメントにそのまんま書いてあるけど・・・)。 Ruby on Rails Guides: Getting Started with Rails の 4.1 Starting up the Web Server に Compiling CoffeeScript to JavaScript requires a JavaScript runtime and the absence of a runtime will
gemのインストール時に発生したエラーとその解決方法をまとめておきます。 とりあえずメモしておいたのはこれぐらい。 mysql2 therubyracer kakasi, mecab sqlite libxml-ruby nokogiri capybara-webkit thrift mysql2 Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /usr/local/bin/ruby extconf.rb checking for ruby/thread.h... yes checking for rb_thread_call_without_gvl() in ruby/thread.h... yes checking for rb_thread_blocking_region()... yes chec
BUNDLED WITH って何? bundler 1.10.0 以降で作成された Gemfile.lock では、BUNDLED WITH というセクションがあって、使用された bundler のバージョンがトラックされるようになっている [3485] 。 例えば bundler 1.9.0 で作成された Gemfile.lock のあるプロジェクト上で、 最新の bundler 1.10.3 を使用して bundle install --path vendor/bundle すると、 Gemfile.lock には以下の差分ができる。 これをもう一度 1.9.0 で bundle install すると、上の文字はきれいさっぱり消える。 BUNDLED WITH の何が困るか 多人数で開発するときには、この変更は微妙に邪魔で、意図しない Gemfile.lock 変更が出てしまうことで
gemを作っていると複数のrubyのバージョンや依存gemのバージョンをカジュアルに組み合わせてテストをしたいというのがよくあると思いますが、あまりやり方が知られていない気がするのでまとめてみます 今回のエントリのサンプルプロジェクト github.com 渋谷.rb[:20150520] のLT資料 gemの複数バージョンカジュアルテスト #shibuyarb from Go Sueyoshi (a.k.a sue445) 最初にまとめ Travis CI使うのがめっちゃ楽。 セットアップ bundle gem コマンドでテストを生成 $ bundle gem multiple_version_test_sample -t --mit Creating gem 'multiple_version_test_sample'... create multiple_version_test_s
Gemfile の 「group :test, :development do」ブロックに書いている 個人的に最強な設定 を晒したいと思います。(2013/10/24 現在) 作業環境 Ruby 2.0.0p247 Rails 4.0.0 Gemfileに設定している内容 ※ コメントに随時変更したものを追記しますー group :test, :development do gem 'pry-rails' gem 'pry-doc' gem 'pry-stack_explorer' if RUBY_VERSION >= '2.0.0' gem 'pry-byebug' else # 以下はRuby1.9の時のみ使う(pry-byebugの代わりに) # debuggerは1.9以下でしか動作しない, remote は byebug で使えないようになった gem 'pry-debugger
asin: 4797363827 title: “[Rails高速化] ページキャッシュ、N+1対策、SQLチューニング” category: Rails 🐯 tags: [Rails, Ruby, Gem]『Cookpadではユーザーへのレスポンスタイム 200ms/reqを目標にしている』に感銘を受けて書き始めたこの記事ですが、『パフォーマンス・チューニングやオススメGem in 「Rails勉強会@東京 第88回」』でいろいろ教えてもらったり、最近関わっているサイトのリニュアールで試行錯誤したので、忘備録も兼ねて記事をアップデートします! 🚕 目次(1) N+1問題の対策 (2) Railsのキャッシュについて (3) 開発中ならrack_mini_profiler (4) 運用中なら断然NewRelicがおすすめ (5) mysqlの簡単チューニング 🚌 (1) N + 1問
元ネタはこちらになります。 いくつかは使ったことはあるのですが、使った事がないものもあったので自分で試しながらまとめてみました。 Awesome Print これはオブジェクトを見やすくしてくれるgemです。 まず、このgemを入れていない場合の出力をみてみましょう。 ちょっとわかりにくいですね。 それではgemをいれてみましょう。Gemfileに以下を追加します。 bundle installをして、rails consoleを立ち上げなおします。 だいぶ見やすくなった感じがします。 ただ、Rails4.2からは、PrettyPrintというのが標準ではいるようになっていて、標準でもだいぶみやすくなってますね。 Rails Panel このgemをいれると、ChromeのDeveloper ToolでRailsの情報を取得できるようになります。 まず、Railsアプリケーションにmeta
Webアプリエンジニア養成読本 Advent Calendar 2014 23日目の記事です。 これまで、Webアプリエンジニア養成読本(以下 先のムック)のPHPデモアプリケーションをCentOS 7で動かすお話をしてきました。その中で、「Serverspecを利用した自動化(20日目)」と、すがさんが Itamae を利用した「Rubyでアプリケーション以外のコードを書く(19日目)」お話をしました。 その上で、サーバ構築自動化の総仕上げとして Itamae + Serverspec を用いてPHPアプリケーションが動くサーバを自動構築・自動テストにチャレンジしてみましょう! 本記事執筆時に利用したバージョンは、CentOS 7.0, Ruby 2.1.2p95, specinfra 2.10.4, Itamae 1.0.13, Serverspec 2.7.1 です。 Itamae,
id:joker1007 さんに触発されました。 Ginza.rb 21回の発表資料。rails_adminのつらみとオススメgem達。 1年間で10個以上アプリやgemを作っている中でよく使うgemをまとめてみます Railsアプリ(rails new した直後に必ず入れる) annotate https://github.com/ctran/annotate_models modelのソースの先頭にテーブルのスキーマ情報を付加してくれるgem。いちいちschema.rbを見に行く必要がなくなるので超ベンリ こんな感じ # == Schema Information # # Table name: plugins # # id :integer not null, primary key # name :string # title :string # version :string #
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く