Railsで使えるGem

多対多の関係でまだ関連を持っていない候補を探す〜active_record、pluck、not in

投稿日:

前提

PersonとProjectは、ProjectsPersonという中間モデル(テーブル)を介して多対多の関係にある.

やりたいこと

まだProjectに参加していないPersonの一覧を出したい.

解説

not

ActiveRecord4からは、not句が便利に使えるようになった.
guides.rubyonrails.org/active_record_querying.html#not-conditions

in

whereのときに、配列を与えるとin句を発行する.

pluck

pluckは基本的に指定したカラムの配列をあたえてくれるActiveRecordのメソッド
railsdoc.com/references/pluck

組み合わせる

Projcetに含まれているPeopleのidを配列にして、not inでwhereすればOK.

-Railsで使えるGem
-,

執筆者:

関連記事

RailsにTwitter Bootstrapを設定する~twitter-bootstrap-rails

環境 ruby 1.9.3  & rails 3.2.8 適当なscaffoldを作っておく

  github.co …

Rails5でコントローラーの記述を省略~inherited_resources

By: Simon Matzinger – CC BY 2.0 目次1 inherited_resources2 Gemfile3 使い方 inherited_resources inhe …

no image

Ubuntu ServerのGuardからネットワーク経由でWindowsのブラウザをリロードする~guard-livereload

Ubuntu12.04.1でCoffeeScriptの自動makeとブラウザの自動リロード~guard-coffeescript   Ubuntu ServerのGuardからGrowl f …

RailsでECサイト構築4 確認メールを送る~spree

  spreeでは注文したときと発送したときにメールを送信できるように設定できるので、やってみた   目次1 設定2 翻訳 設定 管理画面から設定>メールシステムの設定から これで …

no image

Ruby on Rails 3.2でファイルアップロード〜CarrierWave & RMagick

    CarrierWaveはRubyでファイルのアップロードを簡便にするGemです。 RMagickはImageMagickという画像ファイルを加工するソフトのラッパーです。C …