Railsで検索機能を提供する場合に、複雑な条件の組み合わせを実装する時に便利なGem、『Ransack』を紹介たいと思います!
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
bool型でよく使われる命名規則にis(~か)、can(~できるか)、has(~をもつか)から始めるというものがあります。
class ApplicationController < ActionController::Base # 本番環境だけ変更 def default_url_options Rails.env.production? ? { protocol: :https }.merge(super) : super end end Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up
Railsを使っていても実はメールを使うようなところを担当したことがなかったので今更ActionMailerについて勉強中です。 ActionMailerの設定はenvironments/(production|development|test).rbとか、もしくはapplication.rbに書くのでしょうが、普通はenviroments以下だと思います。こんな感じですね。 config.action_mailer.default_url_options = { host: 'localhost:3000' } config.action_mailer.default_url_options = { host: 'example.com' } しかしですね、いろんな環境でお試しで動かしたい場合があると思うんですよ。ステージングとか。デモとか。 そういうときにどういう風にすればいいのか。
ngrokを使って外部からローカルサーバを閲覧可能にする手順(Windows 7用) Web2016年8月17日 作業マシンのローカルサーバを出先で見せたい場面があり、どうにかできないか試行錯誤していたところ、トンネリングサービス「ngrok」がとても便利だったのでご紹介いたします。 具体的にはテストサーバへのファイルアップが面倒だったり、テストサーバ自体が無い状況で開発中のサイトを共有したい場合において、ngrokを使うことでローカルサーバをLANを超えて閲覧させることが可能になります。 ダウンロード 以下のページより、ご自分のマシンに合ったファイルをダウンロードしてください。 ngrok ダウンロードしたファイルを解凍し、ngrok.exeをローカルサーバのルートフォルダに格納します。 D:hogengrok.exe ngrokを起動 ngrok.exeをダブルクリックで起動すると、コ
ArgumentError: Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true
MVP(えむぶいぴー) 最優秀選手 (曖昧さ回避) (Most Valuable Player) 野球 最優秀選手 (日本プロ野球) 最優秀選手 (MLB) 最優秀選手 (KBO) 最有価値球員 (CPBL) サッカー バロンドール FIFA最優秀選手賞 ザ・ベスト・FIFAフットボールアウォーズ UEFA欧州最優秀選手賞 プレミアリーグ年間最優秀選手 PFA年間最優秀選手賞 FWA年間最優秀選手賞 最優秀選手賞 (Jリーグ) その他スポーツ 最優秀選手 (Bリーグ) 最優秀選手 (ボクシング) 最優秀選手 (NBA) 最優秀選手 (NFL) ハート記念賞 その他 僧帽弁逸脱症(英語版) (Mitral Valve Prolapse) 最小存続可能個体数 (Minimum Viable Population) 実用最小限の製品 (Minimum Viable Product) Micros
Mac mini 2023 を購入して半年ほど経った。 これまでは Mac mini 2018 を使っていて、それと比較すると特に CPU を使用するタスクにパフォーマンスの差を感じるのでメモを残しておく。 Mac mini 2018 で抱えていた問題 これまで使っていた Mac mini 2018 で Web アプリケーションのフロントエンド開発をするうえで、下記のような問題を抱えていた。 Node.js を用いたビルドやテストの実行に時間が長くかかる Figma や iOS シミュレーターを起動していると CPU 使用率が 100% になって動作が遅くなる Before)Mac mini 2018 CPU: 3GHz 6コア Intel Core i5 GPU: Intel UHD Craphics 630 1536MB メモリ: 32GB 2667 MHz DDR4 After)Ma
もはや、どのようなアプリケーションにも必須と言っても過言ではないデータベース。 システムで採用するデータベースの選択は、悩みどころのひとつです。 今回は、db-engines.comのDB-EnginesRankingを参考に、世界シェア上位からいくつか抜粋してご紹介したいと思います。 データベースの特性を知る 当然ですが、データベースの種類ごとに異なる特性があります。後々の開発に失敗しないためには、どれにどんな特性、特徴があるかを知っておかなければなりません。 RDBMS (Relational DataBase Management System) 言わずとしれた最もポピュラーなDB。SQL文といった専用の簡易言語を使うことで、複雑なデータ取り出しを可能にしたほか、トランザクション制御により、テーブル間の整合性を保つことを得意としています。 RDBMSの代表的なソフトウェア Oracl
今回は少し、思考を変えてシステムを開発する際にどんなところで Elasticsearch を使えるのか?という視点で説明したいと思います。 最近のシステムの特徴 最近のシステムは、ビッグデータの重要性の認知、ソーシャルデータの活用など、1つのシステムでも様々な種類のデータを管理し活用するようになってきました。また、クラウドサービスやオープンソースが当たり前に使われるようになり、データを管理し活用するためのシステムやサービスも様々な選択肢があります。 そのため、最近のシステムではデータの利用目的によってデータストアを使い分けることが多くあります。 例えば、商品情報など構造化されたデータは、ビジネス要件を満たすためにデータを矛盾なく永続化する必要があるため、MySQL などのリレーショナル・データベースに保存されます。 また、更新や参照トラフィックが多くデータ数も多いゲームやモバイルアプリケー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く