銀座Rails#26の登壇資料です https://ginza-rails.connpass.com/event/189892/
最近、パーフェクトRuby on Railsの増補改訂版をリリースさせていただいた身なので、久しぶりにRailsについて書いてみようと思う。 まあ、書籍の宣伝みたいなものです。 数日前に、noteというサービスでWebフロント側に投稿者のIPアドレスが露出するという漏洩事故が起きました。これがどれぐらい問題かは一旦置いておいて、何故こういうことになるのか、そしてRailsでよく使われるdeviseという認証機構作成ライブラリのより良い使い方について話をしていきます。 (noteがRailsを使っているか、ここで話をするdeviseを採用しているかは定かではないので、ここから先の話はその事故とは直接関係ありません。Railsだったとしても恐らく使ってないか変な使い方してると思うんですが、理由は後述) 何故こんなことが起きるのか そもそも、フロント側に何故IPアドレスを送ってんだ、という話です
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0062 号 バックナンバー Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist Magazine 0058 号 RubyKai
Railsのデバッグ用途のGem12個について概要を調べました better-errors binding_of_caller hirb hirb-unicode pry-byebug pry-doc pry-rails pry-stack_explorer quiet_assets rack-mini-profiler tapp view_source_map デバッグ用途のGemはGemfileの:developmentグループに登録します。 group :development do gem 'better_errors' gem 'binding_of_caller' gem 'hirb' gem 'hirb-unicode' gem 'pry-byebug' gem 'pry-doc' gem 'pry-rails' gem 'pry-stack_explorer' gem 'q
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
『るびま』は、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
Railsでプログラムを書いるとSQLを直接記述する機会が意外と多いので、 なるべくRubyらしく書く方法がないか調べてみました。 ORなどかなり基本的な構文でもarel_tableを使う必要があるのですね。 というわけで、Arel::Table を使ってみました。 動作確認環境は以下の通りです。 ruby: 1.9.3-p392 Rails: 3.2.13 arel: 3.0.2 MySQL: 5.1.65 検索条件をORで繋げたい 基本的な構文ですがSQLを直接記述する場合が多いのではないでしょうか? User.where("name = ? OR name = ?", "太郎", "花子").to_sql #=> "SELECT `users`.* FROM `users` WHERE (name = '太郎' OR name = '花子')" なるべくRubyで書こうとするとこうな
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
ActiveRecord4でこんなSQLクエリどう書くの? Merge編 では、関連先のscopeを使うことができるmergeを紹介しました。mergeを使う事で、変更に強いクエリを美しく組み立てることができました。 今回は、ActiveRecord4で書きにくいSQLクエリたちを紹介します。 書きにくいクエリとは、具体的には以下のものがあげられます。 比較演算ORlikeleft outer joinunionサブクエリexists ActiveRecordでこれらのクエリを組み立てる場合、どうしても美しくない(SQL文字列をべったり書いてしまうような)書き方となってしまいがちです。 この処理を美しく書くためには、ActiveRecordだけの機能では足りず、ActiveRecordが内部で使っているArelというライブラリを使う必要がでてきます。 今回は、Arelを使って華麗にSQLク
2011年08月25日16:55 カテゴリrailsactiverecord Rails3のActiveRecodeで複数のwhere条件をORで書く Rails3になってからArelが導入されてnamed_scopeが便利だなぁ〜と思いつつも、where条件をORで接続するにはどうすんだ?って ことで調べてみた。 ■今回の要件 1.Employeeテーブルから名前(漢字)で検索できる。 2.Employeeテーブルから名前(カナ)で検索できる。 3.カナでも漢字でも検索できる。 4.検索対象フィールド(姓、名、セイ、メイ)を動的に指定できる。 例えばEmployeesテーブルが以下のよう場合 class CreateEmployees < ActiveRecord::Migration def self.up create_table :employees do |t| t.string
はじめに RSpecを使ってテストを記述している際、テストの実行前にデータをテーブルに登録しておきたいケースが多々あるかと思います。RSpec内でActiveRecordを使ってデータを登録することもできますが、複数のテストケースで同じデータを使いたい場合、データの定義は一箇所で行いたいところです。 この様な場合、Factory Girlを使用すると、一箇所でテストデータを定義できます。今回はこのFactoryGirlの使い方について書きたいと思います。 使い方 使い方の大まかな流れとしては、 FactoryGirlが使用できるようにする 定義ファイルにデータを定義する 必要とするテストケースにてファイルを読み込み、データを適時加工して登録する という感じとなります。尚、この定義したデータを「Factory」とも言います。以下、手順です。 1.Gemfile Gemfileに以下を記述し、
Rails Girls ガイド これらのガイドは、女性がテクノロジーやアイディアを形にする方法を理解するためのツールやコミュニティを提供するため作られています。自分のイベントを運営したり、新しいガイドを提案したり、あるいは単にRailsを学ぶために使うこともできます。もっとRails Girlsに関わりたいと思ったら、Rails Girls Teamメーリングリスト(英語) に参加してください。 Rails Girlsのイベントについてもっと知りたいですか?: Rails Girlsのイベント コーチだったり、ワークショップを企画しようとしていますか?こちらを見てみてください: Rails Girlsのガイド Guides in other languages Rails Girls Official site Guides in English Guides in French Guid
Ruby on RailsでDev環境は使ったことあるけど、test・prod環境を考慮した環境構築をしたことがない人にお勧めの内容です。 サーバー構成図 サーバーの役割 リバースプロキシサーバー(ホスト名:rp01) ロードバランサ機能を使ってWEBサーバ二台に処理を振り分け、アクセスを1台のサーバーに集中させない WEBサーバーを外部から隠せることでセキュリティ面の向上 WEBサーバー(web01、web02) webサーバーを2台用意することでアクセスが1つのサーバーに集中しないため、レスポンスを早くできる マスターDBサーバー(db01m) DB内容をもう1台のDBサーバー(スレーブ)へリアルタイムにコピーし、障害でマスターが停止したときはスレーブに切り替える スレーブDBサーバー(db01s) 読み込み専用のサーバー。書き込みをしない分レスポンスが早くなる マスターの内容を常にコ
はじめに サンプルアプリ等を作成する際、デザインに悩むことは多いかと思います。 (特にデザインセンスに乏しい私のようなプログラマは・・・) このような時に、Bootstrapは強い味方となります。(今更感は強いですが・・・) またBootstrapにはデザインのサンプルが用意されているので、このサンプルをベースとしてアプリを作っていけばデザインについて悩むことを減らすことができそうです。 今回はRuby on Rails 4 にBootstrap3を適用し、サンプルにある「Starter template」と同じページを作る 手順について纏めてみたいと思います。 作業手順 以下に、今回の作業手順を書いていきます。 1.ページ作成 まずはRuby on Railsにて、今回表示するページを作成します。 コントローラ、ビューの作成 今回表示する画面のコントローラは「welcome」、ビューは「
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く