タグ

あとで読むとRailsに関するchanpon0のブックマーク (19)

  • Ransackで簡単に検索フォームを作る73のレシピ - 猫Rails

    はじめに 登場人物の紹介 プロローグ 環境 第1章 Ransackをはじめよう 001 Ransackとは? 002 セットアップ 003 使ってみよう コントローラー ビュー 第2章 シンプルモードで検索する 004 シンプルモードとは? 005 述語とは? 006 eq - =検索 007 matches - LIKE検索 008 cont - LIKE検索(部分一致) 009 start - LIKE検索(前方一致) 010 end - LIKE検索(後方一致) 011 gt - >検索 012 gteq - >=検索 013 lt - <検索 014 lteq - <=検索 015 true - trueの検索 016 false - falseの検索 017 blank - blank?の検索 018 present - present?の検索 019 null - NULLの検

  • Ruby on RailsのAjax処理のおさらい - Qiita

    何気に、アプリケーションで取り扱うデータ量が増えた場合や、大容量データをデータベースとやり取りする時なんかは、Ajaxを使ってデータ通信をバックエンド側に押しやることで、WEBフロント側のUXからパフォーマンスの悪さを改善できたりする。また、ネットワーク経路的にproxyサーバとかを中継するような環境間でデータのやり取りをする場合などに、proxy側で接続時間にリミットがかけてあったりすると、通常アクセスではデータ通信時間がリミットに達して503エラーとかになってしまうような処理でもAjaxで通信をバックエンド化することで、回避できたりもするのだ。 通信帯域が小さいスマートデバイスが主力である今のご時勢、Ajaxによる非同期処理は、言語やフレームワークを問わずに必須な技術になっている。 私の主力スキルはPHPなので、PHPJavaScript(jQuery)やWordPressでのAja

    Ruby on RailsのAjax処理のおさらい - Qiita
  • Rails アプリケーションのデバッグ - Railsガイド

    1 デバッグに利用できるビューヘルパー 変数にどんな値が入っているかを確認する作業は何かと必要になります。Railsでは以下の3つのメソッドを利用できます。 debug to_yaml inspect 1.1 debug debugヘルパーは<pre>タグを返します。このタグの中にYAML形式でオブジェクトが出力されます。これにより、あらゆるオブジェクトを人間が読めるデータに変換できます。たとえば、以下のコードがビューにあるとします。

    Rails アプリケーションのデバッグ - Railsガイド
  • Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita

    はじめに Railsアプリケーションを格的に作り込んでいくと、「エラー」とは無縁ではいられません。 しょうもないバグでエラーが発生することもありますし、ほとんど不可抗力ともいえるような大規模なネットワーク障害でエラーが発生することもあります。 エラーの種類がなんであれ、エラーが起きた場合は「原因を素早く特定し、速やかに復旧させること」と「あるエラーが引き金になって、さらに大きなエラーに引き起こさないようにすること」が重要です。 エラー処理を適切に実装していれば、原因の特定や復旧もすばやくできますし、さらに大きなエラーを引き起こす可能性も少ないです。 また、ソースコードも比較的シンプルに保てます。 逆にエラー処理が不適切だと原因の特定に時間がかかったり、異常なデータがどんどん増えてさらに大きなエラーを引き起こしたりします。 ソースコードにも無駄に複雑な処理フローや条件分岐がたくさん出てきて

    Railsアプリケーションにおけるエラー処理(例外処理)の考え方 - Qiita
  • Railsの開発効率をあげる - Springを使ってRailsのコンソールコマンドの実行を早くする - Rails Webook

    Springとは Springとは、Rails4.1から標準で付属するようになったアプリケーションプリローダーです。 Rails内では様々なライブラリのロードなどの前処理が行われるので、コマンドを実行するための待ち時間がかかってしまいます。 事前にバックグラウンドでライブラリをロードしておくことで、その待ち時間を短くするものがアプリケーションプリローダーです。 MiniTestやRSpecをrakeコマンドで実行したり、サーバー起動やconsoleをrailsコマンドで実行すると思いますが、動き出すまで数秒かかると思います。 開発を通すとこういったコマンドは、何十回、何百回も実行することになるので、数秒でも早いにこしたことはありません。 他の有名なアプリケーションプリローダーには、SporkやZeusといったものもあります。 Spring導入前 Springを使わないでテストを実行してみま

    Railsの開発効率をあげる - Springを使ってRailsのコンソールコマンドの実行を早くする - Rails Webook
  • Rails: ActiveRecordのenum要素をselectフォームでいい感じに表示する - Qiita

    class Article < ActiveRecord::Base enum status: { deleted: 0, drafted: 1, published: 2 } # (略) Article.published とか、 @article.published? とか気の利くメソッドをにょきにょき生やしてくれるので私は好きです formでselectしたい enumの要素をformタグのselectとか使って出力して編集画面作りたいことってありますよね。人間ですもの。 普通にやるとselectメソッドの2つめの引数に配列を渡してやればいいのでこんな感じ?

    Rails: ActiveRecordのenum要素をselectフォームでいい感じに表示する - Qiita
    chanpon0
    chanpon0 2016/11/19
    enum要素を画面表示
  • re: Rails update時に値を変更して更新したい | そんなこと覚えてない

    友人のブログ記事へのレスです。 JunkBox~主に個人的防備録~: Rails update時に値を変更して更新したい。について。 さすがにやってることがまわりくどい。コメント欄だと返信がつらいのでここにかく。 まず、元の内容を引用します。 たとえば、保存時10円単位で四捨五入して保存したい場合。 ついでに登録日を1日ずらす。 日付型の項目は、年、月、日、時、分、秒と別れてパラメタに入ってくるので、扱いづらい。ので、一旦モデルに突っ込んで処理し、その後ハッシュに変換する。 def update # パラメタを一旦モデルに突っ込む tmp = Syohin.new(syohin_params) # 金額を10円単位で丸める tmp.kingaku = tmp.kingaku.round(-1) # 日付型の登録日を1日ずらす。 tmp.record_datetime = tmp.recor

    chanpon0
    chanpon0 2016/11/05
    “assign_attributes”後から試す。
  • 早く知ってたら良かったrailsの技 - Qiita

    はじめに 自分が rails をさわり始めたときはバージョン1からバージョン2に変わるあたりだったのですが、バージョン2が出た年を振り返るとなんと2007年でした。 月日の流れが速い事に驚く中、早く知ってたら良かったのになぁって事をつらつらとまとめてみました。 最近 rails さわり始めてみたよ!って方の参考になれば良いなと思います。 今回は便利な gem とかではなく、素のrailsで出来ることを挙げています。 ちなみにバージョンは以下の環境です。 About your application's environment Ruby version 2.1.3-p242 (x86_64-darwin14.0) RubyGems version 2.2.2 Rack version 1.5 Rails version 4.1.8

    早く知ってたら良かったrailsの技 - Qiita
  • styleguide/ruby.ja.md at master · cookpad/styleguide

    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

    styleguide/ruby.ja.md at master · cookpad/styleguide
  • テスト(test) | Railsドキュメント

    テストとは 説明 あるURLにアクセスした際に、予期した画面が表示されるか ある正しい操作をした際に、アプリケーションの状態が正しく変更されるか ある正しくない操作をした際に、適切なエラーメッセージが表示されるか 単体テスト モデルの検索系メソッドが正しい値を取得できるか モデルの更新系メソッドが正しくデータベースを更新できるか モデルの更新系メソッドが不正な入力に対して、適切なエラーを発生させるか 機能テスト 適切なテンプレートが選択されているか インスタンス変数に適切な値が格納されているか 適切にレンダリングされているか 更新系のアクションが正しくデータベースを更新されるか 総合テスト ログインして、新しいメンバーを追加して、ログアウトするといった一連の動きをテスト テストデータ 説明 事前に用意したテストデータを読み込み常にDBの内容を一定に保つための仕組みのことをフィクスチャと呼ぶ

    テスト(test) | Railsドキュメント
  • Rails で fat model を避けるための、あまり知られていない方法について - おもしろwebサービス開発日記

    このエントリで書いた内容は、ほぼ Growing Rails Applications in Practice の内容が元になっています。英語ですが、ここで挙げた内容以外にもコードを綺麗に保つテクニックが書かれており、かつページ数も少なく読みやすいです。コードを綺麗に保つのが好きな方は一読してみることをおすすめします。 はじめに Rails で fat model を避けるための方法は、7 Patterns to Refactor Fat ActiveRecord Models を始めとして、多くのやり方が存在します*1。 validation や callback は ActiveRecord(以下AR) を継承せずとも利用することができます。7 Patterns to Refactor Fat ActiveRecord Models の 「3. Extract Form Objects

    Rails で fat model を避けるための、あまり知られていない方法について - おもしろwebサービス開発日記
    chanpon0
    chanpon0 2016/10/25
    継承。後で試す。
  • RSpec/Capybara入門 - Ruby on Rails with OIAX

    Ruby on Railsプログラマーのための「RSpec/Capybara入門」を連載します。Railsを学習中の初心者がテスト駆動開発(TDD)あるいはビヘイビア駆動開発(BDD)を実践するための基礎的な知識や考え方を説明していきます。 メインテーマはRSpecとCapybaraですが、factory_girl、Database Cleaner、Zeusなどの関連するGemパッケージも途中で紹介していく予定です。また、CSSセレクタやXPathについても簡単に解説することになるでしょう。 いちおうRubyRailsの基礎知識を話の前提としますが、初心者を念頭に置いて丁寧な説明を心がけます。 できるかぎり具体的にコーディングと操作手順を示すつもりです。実際に手を動かしながら読み進めると、より理解が深まるでしょう。 記事一覧 イントロダクション (2013/08/14) RSpec/Ca

    RSpec/Capybara入門 - Ruby on Rails with OIAX
    chanpon0
    chanpon0 2016/10/25
    文法が古い。基本の理解に。
  • RSpec3初心者向けの資料まとめ直しました![Ruby]

    TDDでRSpecを書くにあたって、どれだけ効率的に効果的なテストが書けるかは、品質を高めていく上ですごく大切なことだと思います。 今回、RSpec3用のドキュメントやWebサイトをいろいろ読みなおして、最近までに特に良かった記事などを中心にまとめ直しました。 RSpec3に入門しようとしている初心者さんや、普段使っているけどもう一度RSpec3の知識を整理したい人にオススメのマトメです! 🗽 TDD/BDDとは?TDD/BDDにおける「振る舞い」の意味するところとは何なのか RSpecに限定された記事ではないですが、BDDの根的な概念の「振る舞い」についてまとめられた記事です。 これを知っておくことで、ここから先の話がかなりスムーズに理解できるようになると思います。 🎂 まずテスト書いてからコード書くシンプルなチュートリアルはじめてのRSpec - まずテスト書いてからコード書くシ

    RSpec3初心者向けの資料まとめ直しました![Ruby]
  • いまさら聞けないfactory_girl入門 - Grooves開発ブログ

    thoughtbot/factory_girlを活用して日々テストを書いているRailsエンジニアの方々、こんにちは、正徳です。 Forkwellでもfactory_girlを使ってテストを書いています。 このfactory_girlには便利機能が多く、とても使いやすいのですが、女心並みに複雑*1なので、一通りの機能をブログにまとめてみました。 factory_girl初心者から、中級者の参考になれば幸いです。 参考にしたページ このブログの内容は全てfactory_girlのGETTING_STARTEDに記載されています。 読まれた事のない方は、是非一読する事をおすすめします。 目次 factory_girlのインストールと設定 factory_girlの使い方(Using factories) build create attributes_for build_stubbed 遅延評

    いまさら聞けないfactory_girl入門 - Grooves開発ブログ
  • 静的データやマスターデータの為だけにtableを持つのを止めよう。 active_hash が便利そうだ - Qiita

    zilkey/active_hash HashデータをActiveRecordのように扱う事の出来るgem。 少し使った感じはかなり便利そう。 Qiitaにactive_hashだけの記事が無かったので書いてみる。 用途 例えば、カテゴリデータや都道府県など、プルダウンに使うような静的データは、色々な持ち方ができます。 単純に定数で扱ってもいいですし、

    静的データやマスターデータの為だけにtableを持つのを止めよう。 active_hash が便利そうだ - Qiita
    chanpon0
    chanpon0 2016/10/14
    enumerize active_hash
  • 第9章 ユーザーの更新・表示・削除 - Railsチュートリアル

    第1章 ゼロからデプロイまで 第1章 ゼロからデプロイまで 1.1 はじめに 1.1.1 前提知識 1.1.2 このにおける取り決め 1.2 さっそく動かす 1.2.1 開発環境 1.2.2 Railsをインストールする 1.3 最初のアプリケーション 1.3.1 Bundler 1.3.2 rails server 1.3.3 Model-View-Controller (MVC) 1.3.4 Hello, world! 1.4 Gitによるバージョン管理 1.4.1 インストールとセットアップ 1.4.2 Gitのメリット 1.4.3 Bitbucket 1.4.4 ブランチ (branch)、変更 (edit)、 コミット (commit)、マージ (merge) 1.5 デプロイする 1.5.1 Herokuのセットアップ 1.5.2 Herokuにデプロイする (1) 1.5.

    第9章 ユーザーの更新・表示・削除 - Railsチュートリアル
  • Rails脱初心者のための基礎知識と実装Tipsまとめ(2) - 区分値管理編 - Qiita

    はじめに 第1回の設計編に続き、第2回は区分値管理編をお送りします。 記事はRails利用者だけでなく、他の言語・技術要素においても参考になるように記載したつもりです。 区分値管理とは エンタープライズなシステムを作る場合には、必ずといっていいほど、登場するのが区分値です。一番簡単な例でいうと、会員マスタというテーブル上で、カラムに性別を保持すると場合、男性であれば1、女性であれば2というように、値に特別な意味を持たせてデータを保持する、伝統的なシステムの設計技法です。 国産のJava永続化フレームワークであるDBFluteのドキュメントにも下記のように解説されてますので、そもそも区分値ってなんだという方は参考にしてください。 区分値 (Classification) | DBFlute http://dbflute.seasar.org/ja/manual/function/genba

    Rails脱初心者のための基礎知識と実装Tipsまとめ(2) - 区分値管理編 - Qiita
    chanpon0
    chanpon0 2016/10/13
    列挙体 区分値
  • PublicActivity を使って GitHub の News Feed みたいな機能を実装したメモ - present

    GitHub の News Feed みたいな機能を実装するのに、今まで TimelineFu を使っていたけど、GitHub のコミットログを見たら2年前から開発が滞っているみたい。 Rails 4 が出ても対応なんて望めそうもないので、Ruby Toolbox で TimelineFu の次に人気の PublicActivity を使ってみることにした。 https://github.com/pokonski/public_activity PublicActivity をインストール Gemfile に gem "public_activity" を追加し、 bundle を実行してインストール。 データベースのセットアップ アクティビティを保存するテーブルが必要なので、 rails generate public_activity:migration でマイグレーションファイルを生

    PublicActivity を使って GitHub の News Feed みたいな機能を実装したメモ - present
    chanpon0
    chanpon0 2016/10/07
    通知機能
  • Mac上でDockerを使ってnginxとRailsアプリケーションを動かす - Qiita

    Docker, boot2dockerなどの基はご自身でお調べ下さい。 ※ Docker Toolbox をインストールして下さい。以下すべての作業はDocker Quickstart Terminalで行っています。 構成 こちらの構成を再現しました。 (参考にした記事はEC2インスタンス上に直接構築していますが、今回はMac上のboot2dockerインスタンス上に構築したので、ちょこちょこと詰まることがありました。) MacでのDockerの構造については主題とは関連が薄いので割愛しますが、調べてみると良いかと思います。 昔はいろいろ問題があったようです。 さておき、ホスト上に4つのコンテナを構築します ・data: このコンテナーを介してデータやソケットの共有、ホストのファイルの共有などを行う ・app: RubyRails、unicornが動作するコンテナー ・mysql

    Mac上でDockerを使ってnginxとRailsアプリケーションを動かす - Qiita
  • 1