並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 136件

新着順 人気順

activesupportの検索結果1 - 40 件 / 136件

  • ソースコード・リーディングしよう![GemJam][ActiveSupport]

    @h5y1m141さんに誘っていただいて、 @hitomi_twさんや shiro615さんと一緒に、RubyGemsのソースコードリーディング勉強会『GemJam』を行いました。 今回は最近仕事でソースコードを読む時間が増えてきて、苦労していたのでソースコード・リーディングのモチベーションアップやコツを調べつつ、いつもRailsでお世話になっていた『ActiveSupport』 のソースコードリーディングに挑戦してみました。 (12/28 12:10) 勉強会のアウトプットを更新しました。全員アウトプットしたのはすばらしいです 🎉 プログラムのモチベーションこれは経験談からくる話ですので、これが正解ということでないッス。どちらかというと、今までエンジニアとして経験してきた中で、僕個人はこう思っていますという観点で書きました! プログラミングは継続することが一番大切プログラミング経験ゼロ

      ソースコード・リーディングしよう![GemJam][ActiveSupport]
    • ActiveSupport::Concern でハッピーなモジュールライフを送る | TECHSCORE BLOG | TECHSCORE BLOG

      こんにちは、鈴木です。 以前のエントリで「includeされた時にクラスメソッドとインスタンスメソッドを同時に追加する頻出パターン」をご紹介しました。 今回は、それに関する定形処理を肩代わりしてくれる ActiveSupport::Concern をご紹介します。 includeされた時にクラスメソッドとインスタンスメソッドを同時に追加するパターン Before 以前のエントリ(includeされた時にクラスメソッドとインスタンスメソッドを同時に追加する頻出パターン)でご紹介していますが、おさらいしましょう。 module M def self.included(base) base.extend(ClassMethods) end module ClassMethods def foo puts 'foo' end end def bar puts 'bar' end end

      • 川o・-・)<2nd life - Rails 1.0 -> 1.1 の ActiveSupport 変更点まとめ

        Ruby on Rails 1.0 までは AWDwR 本を読んで使い方が解ってる人も多いと思うのですが、1.1 以降でどんな詳細な機能が加わったのかはあまり知られてません。 そのために ActiveSupport の CHANGELOG を淡々と読んでまとめてみました。間違ってる可能性もあるのでそういう箇所があったらご指摘下さい。 Add CachingTools::HashCaching to simplify the creation of nested, autofilling hashes. [Nicholas Seckar] CachingTools::HashCaching という Hash を利用したシンプルなキャッシュ機能のモジュールが加わりました。このモジュールを利用したいクラスで extend して hash_cache :methodnameとすると、そのメソッドが

          川o・-・)<2nd life - Rails 1.0 -> 1.1 の ActiveSupport 変更点まとめ
        • Railsの計測を支えるActiveSupport::Notificationsについて | GMOメディア エンジニアブログ

          こんにちは、技術推進室の篠崎(前回より5ヶ月ぶり)です。 Ruby on Rails(以下Rails)にはイベント(SQLを実行する、テンプレートを描画するなど)に対してフック(計測)できる仕組みがあるのはご存じですか? おなじみのログもこのフックの仕組みを利用して出力されています。(1行目除く) Started GET "/samples/1.json" for 127.0.0.1 at 2014-12-10 12:35:30 +0900 Processing by SamplesController#show as JSON Parameters: {"id"=>"1"} Sample Load (0.5ms) SELECT `samples`.* FROM `samples` WHERE `samples`.`id` = 1 LIMIT 1 Sample Load (0.5ms) S

            Railsの計測を支えるActiveSupport::Notificationsについて | GMOメディア エンジニアブログ
          • [Rails] ActiveSupport::Concern の存在理由 - Qiita

            Railsにおいて共通した処理を切り出すために ActiveSupport::Concern がよく使われています。 しかし、Rubyには元から mix-in という処理を切り出す機能があります。 では、ActiveSupport::Concern の存在理由は何でしょうか。 mix-inの複雑な記述を省略できる Rubyの mix-in は通常以下のようなルールで記述します 切り出した機能を module として作成 共通メソッドを module 内に記述 クラスメソッドや組み込み先クラスの内部処理を module に入れたい場合は特殊なメソッドを使う必要がある ActiveSupport::Concern はこの3番目にある 特殊なメソッド の記述を簡単にしてくれます。 具体的にConcernあり/なし の例を見てみましょう。 (具体例コードは ActiveSupport::Conce

              [Rails] ActiveSupport::Concern の存在理由 - Qiita
            • Rails 6.1 にアップグレードしたら ActionController::Parameters が ActiveSupport::HashWithIndifferentAccess に入れ替わる不具合に出会った話 - STORES Product Blog

              こんにちは、ヘイ株式会社 CTO 室の id:hogelog です。 先日 STORES https://stores.jp/ec を支える Rails アプリケーションが静かに Rails 6.0 から Rails 6.1 にアップグレードされたのですが、そんな中で出会った現象が非常に不可解でエキサイティングなものだったので紹介させていただきます。 起きた現象 Rails 6.1 アップグレードで発生した不具合は要約すると「入れ子構造のハッシュを引数として作成した ActionController::Parameters 子要素のハッシュは ActionController::Parameters になっているはずなのになぜか低確率で ActiveSupport::HashWithIndifferentAccess になってしまう」というものでした。 不具合に関連するコードのみ示すと以下

                Rails 6.1 にアップグレードしたら ActionController::Parameters が ActiveSupport::HashWithIndifferentAccess に入れ替わる不具合に出会った話 - STORES Product Blog
              • ActiveSupportを読んでみよう & テストコードに感謝する - joker1007’s diary

                この記事はRuby Advent Calendar 2011の15日目になります。 14日目の記事は、ongaeshi007さんによる、RubyGemsはrequireの裏で何をやっているのか? - ブログのおんがえしです。 タイトルと関係無い話 全くの私事で恐縮ですが、本日、2年半とちょっと勤めていた会社を退職しました。 いわゆる大手SIerという所で、Excelと睨めっこし、誰が読むんだから良く分からない資料を書いたりしていましたが 来週から、Ruby/Railsで仕事できるみたいです。なんたる僥倖。 しばらくは、立場上フリーということになるので、 調べておかないといけないことや、やらなきゃいけないことが一杯あるんですが、 段階的に開かれる送別会と、忘年会で飲み会だらけで、一向に手が進んでなかったりします。 まだ、そんな先のことは分かりませんが、 胸張ってエンジニアですよと言えるような

                  ActiveSupportを読んでみよう & テストコードに感謝する - joker1007’s diary
                • ActiveRecord と ActiveSupport を使ってコマンドラインアプリを作る - ma2’s diary

                  目の前にはcsvの山がある。これをrdbに突っ込まないといけない。その後railsアプリがそのrdbを使うのである。csvは何種類かあって,素直にテーブルに対応しているわけじゃない。つーことは突っ込むときにActiveRecordを使えればラクじゃろと思った。ARだけじゃなくて,便利なメソッドがたくさん入っているActiveSupportも使いたい。とりあえず何も考えずにスクリプトを書いてみる。 require 'rubygems' require_gem 'activerecord' とすればARは(ActiveSupportも)使えるようになる。でもモデルはrailsで作ったモデルをそのまま使いたい。同じ定義をコピペしてもいいんだけど,バージョンがずれたりすると困るし。 require 'rubygems' require_gem 'activerecord' $LOAD_PATH.p

                    ActiveRecord と ActiveSupport を使ってコマンドラインアプリを作る - ma2’s diary
                  • Railsで簡単可逆暗号(ActiveSupport::MessageEncryptor) - Qiita

                    Railsで簡単に可逆暗号をする方法 情報が古くなったため、rails4.2, rails5.0, rails5.1, rails5.2, rails6.0 で変更点確認し更新 使い方 ActiveSupport::MessageEncryptor を利用することで簡単に可逆暗号ができる key_len = ActiveSupport::MessageEncryptor.key_len secret = Rails.application.key_generator.generate_key('salt', key_len) crypt = ActiveSupport::MessageEncryptor.new(secret) encrypted = crypt.encrypt_and_sign('Qiitaきーたキータ') # => "Adp1SPOkYRqLgTMoAlcyEganoi

                      Railsで簡単可逆暗号(ActiveSupport::MessageEncryptor) - Qiita
                    • ActiveSupportのHash拡張であるslice, exceptがびっくりするぐらい便利 - Qiita

                      ActiveSupportによる既存Rubyクラスの拡張は人間をダメにするんじゃないかと思いますが、知っていると周りのプログラマに差をつけられるテクニックが満載だと思います。今回はHashの拡張メソッドの話。 よくあるコード some_hash = { key_a: "some content", key_b: "some content", key_c: "some content" } # :key_aと:key_bを取り出したい some_hash.select{|k, _| %i(key_a key_b).include? k} #=> {key_a: ..., key_b: ...} # :key_cを除外したい some_hash.reject{|k, _| k == :key_c} #=> {key_a: ..., key_b: ...} some_hash = { key_

                        ActiveSupportのHash拡張であるslice, exceptがびっくりするぐらい便利 - Qiita
                      • RailsじゃなくてもActiveSupportの自動require機能を使う - 昼メシ物語

                        Railsでは、 config/application.rb で config.autoload_paths << Rails.root.join("lib") と書いておくと、例えば $ cat lib/my_library.rb class MyLibrary : endみたいなファイルが置いてあれば、Railsアプリ内で MyLibrary クラスを特にrequireしなくても使える。これは ActiveSupport::Dependencies というクラスが const_missing をフックして、 autoload_paths にあるディレクトリの中から適切なファイルを自動requireしてくれるから。 これは大変便利なので、Railsじゃないアプリから使いたい。 やりかた require 'active_support/dependencies' ActiveSupport

                          RailsじゃなくてもActiveSupportの自動require機能を使う - 昼メシ物語
                        • 【悲報】ActiveSupport::Concern の ClassMethod はモジュールメソッドになる件 - MUGENUP技術ブログ

                          皆さんこんにちは!「太鼓式マッサージ?面白そう!」と思ったら「タイ古式マッサージ」でした。MUGENUP の osada です。名前って難しいですよね。 ところで、ActiveSupport::Concern の ClassMethod で定義したクラス変数が、どこにあるか、ご存知ですか? # app/models/concern/item_module.rb module ItemModule extend ActiveSupport::Concern module ClassMethods def my_module_method @@concern_class_variable ||= "concern_class_variable" end end end # app/models/item.rb class Item < ActiveRecord::Base include It

                          • ActiveSupport::Concern - Railsのソースとか読みはじめた | そんなこと覚えてない

                            Railsのソースをちょろちょろ読むようにしている。読んで学んだことをメモしておきたい。だいたい読んだ当時の最新リリースを参考にします。 ActiveSupport::Concern を読みました。 このモジュールはモジュールの定義を手助けします。 クラスメソッドの定義場所をルール決めして include するだけで済むようにしたり、クラスのコンテキストで実行したい処理を書く場所を用意してくれます。 具体的にいきます。 以下のコードがあったとします。 class ConcernSample attr_accessor :hoge def self.mogu "mogu" end def goro "goro" end end これを以下のようにするだけで同じ機能を提供できるようにしたいと思います。 class ConcernSample include Sample end 処理を Sam

                            • ActiveSupportのHash拡張 - satake7’s memo

                              認証系のソースを読んでいると『options.reverse_merge! :title => ip_addr』というのが出てきて、こんなの Rubyにあったっけと思って調べたら、やっぱ Rubyにはなくて ActiveSupportのクラス拡張でした。せっかく調べたのでまとめ。 Hash#reverse_merge, Hash#reverse_merge! Hash#merge(こちらは Rubyに元々あるメソッド)の逆。mergeはキーが重複する場合、値を置き換えるが、reverse_mergeはキーが重複する場合、値を置き換えない。 用途としてこれは便利だとパッと思いつくものはないんだけど、強いてあげれば、初期値のセット(2回目以降の値はセットしない)とか、デフォルト値のセット(値を書き換えない)くらいかな。 options = { :a => 1, :b => 2, :c => 3

                                ActiveSupportのHash拡張 - satake7’s memo
                              • ActiveSupport::MultiByte Fingertips

                                As of revision #5223 ActiveSupport::Multibyte is part of Rails. Now everyone can enjoy multibyte safeness in their applications. Needless to say we are really happy. You’re reading an archived weblog post that was originally published on our website.

                                • ActiveSupport::MessageEncryptorを慎重に使う - nisshieeのブログ

                                  経緯 Rubyを2.3系から2.4.1に上げたら、ActiveSupport::MessageEncryptorを使っているところが壊れた。ちなみにRailsは5.0.1。 key must be 32 bytes /Users/nisshiee/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/message_encryptor.rb:79:in `key=' /Users/nisshiee/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/message_encryptor.rb:79:in `_encrypt' /Users/nisshiee/

                                    ActiveSupport::MessageEncryptorを慎重に使う - nisshieeのブログ
                                  • ActiveSupport の便利メソッド: try, blank?, present?, presence | TECHSCORE BLOG | TECHSCORE BLOG

                                    こんにちは、鈴木です。 便利なメソッドやイディオムの存在を知ってしまったときの楽しさは、Ruby/Railsを使う理由の一つではないでしょうか。 今回は、便利メソッドの宝庫 ActiveSupport からいくつかご紹介したいと思います。

                                    • shibuya.rb(仮名)、第一回簡易報告+ ActiveSupport の便利 tips « blog.udzura.jp

                                      11月25日、有志にておこなった、渋谷近辺の Rubyist とそうでもない Rubyist による勉強会。今回は、 ActiveSupport のソースを読んでみた。 会場は最近「株式会社 VOYAGE GROUP に行ってきた!」で話題にもなった VOYAGE GROUP さん提供でした。 見たファイルとそのメモ 公式 github repo から落としてきた。下記、抜けがあるかもしれません。 “lib/active_support” “lib/active_support/inflector/methods” 読めば分かる “lib/active_support/dependencies/autoload” autoload の第二引数を省略可能になる “lib/active_support/lazy_load_hooks” #on_load “lib/active_support/

                                      • ActiveSupport Time拡張 - Qiita

                                        Time.now.all_day # => 2013-01-23 00:00:00 +0900..2013-01-23 23:59:59 +0900 Time.now.all_week # => 2013-01-21 00:00:00 +0900..2013-01-27 23:59:59 +0900

                                          ActiveSupport Time拡張 - Qiita
                                        • Journal of miyagawa (1653) - ActiveSupport equivalent to Perl

                                          UPDATE: The module was originally written using constant overloading, but it is a dangerous and gross hack, so I changed that to use autobox framework instead (wondering why I didn't try that at first!). I updated the post accordingly.Rails has ActiveSupport, something to add funky methods to Ruby core object, to do fancy things like 2.months.ago to get Time duration object etc.I found it pretty i

                                          • CustomInk: RailsのActiveSupport::Notificationsでアナリティクスをもっと理解する - ワザノバ | wazanova

                                            http://technology.customink.com/blog/2013/12/19/instrumenting-your-code-with-activesupport-notifications/1 comment | 0 pointsカスタムTシャツサイトCustomInkが同社のエンジニアリングブログで、Railsのアナリティクス取得のポイントとなるAPIであるActiveSupport::Notificationsを紹介しています。 New RelicのようなアナリティクスツールがどのようにRailsアプリからデータを取得している知りたいとか、同じテクニックを使って自分のライブラリをつくってみたいのであれば、Rails 3.0以降で利用可能なAPIであるActiveSupport::Notificationsを理解すればよい。今回は人気のgemに[Video] free

                                            • uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)|DIGITAL SQUADブログ

                                              uninitialized constant ActiveSupport::Dependencies::Mutex (NameError) rvmを再インストールしたのに伴い、ruby 1.8.7を再インストールしたらRails 2.3.8でuninitialized constant ActiveSupport::Dependencies::Mutex (NameError)というエラーが出るようになった場合の解決策。 ruby on rails - uninitialized constant ActiveSupport::Dependencies::Mutex (NameError) - Stack Overflowを見ると、Rails2.3.8と最近のRubyGemsで起こるエラーらしい。 RubyGemsのバージョンを確認gem -v 1.6.2rvmのrubyを再インストールし

                                                uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)|DIGITAL SQUADブログ
                                              • ActiveSupport の strip_heredoc でヒアドキュメントを綺麗に書く | TECHSCORE BLOG | TECHSCORE BLOG

                                                こんにちは、鈴木です。 ActiveSpport の strip_heredoc というメソッドをご存知でしょうか? 行頭の不要なインデント 以下のスクリプトを見てください。 # coding: utf-8 require 'active_support/core_ext/string/strip' puts <<-'EOS' おじいさんは、山へ芝刈りに。 おばあさんは、川へ洗濯物に。 EOS

                                                • ActiveSupport::Testing::TimeHelpers

                                                  Calls travel_to with Time.now. Forwards optional with_usec argument. Time.current # => Sun, 09 Jul 2017 15:34:49 EST -05:00 freeze_time sleep(1) Time.current # => Sun, 09 Jul 2017 15:34:49 EST -05:00 This method also accepts a block, which will return the current time back to its original state at the end of the block: Time.current # => Sun, 09 Jul 2017 15:34:49 EST -05:00 freeze_time do sleep(1)

                                                  • これはMUST!ActiveSupport の Class#class_attribute を使おう! - Qiita

                                                    これはMUST!ActiveSupport の Class#class_attribute を使おう!RubyRailsactivesupport この記事は Ruby on Rails の Advent Calendar 2015 の11日目です。 この記事では ActiveSupport の Class#class_attribute を紹介します。 Class#class_attribute を使うと、親クラスの設定値をデフォルト値にしつつ、子クラスでその動作をカスタマイズするということがカンタンにできます。 はじめに クックパッド社の Ruby styleguide はご覧になったことはありますでしょうか? その中で下記のような記述があります。 [MUST] クラス変数 (@@foo) を使用してはならない。代わりに class_attribute を使用すること。 なぜクラス変数

                                                      これはMUST!ActiveSupport の Class#class_attribute を使おう! - Qiita
                                                    • Rails 5.2 で ActiveSupport::MessageEncryptor::InvalidMessage - Qiita

                                                      `validate_secret_key_base': Missing `secret_key_base` for 'production' environment, set this string with `rails credentials:edit` (ArgumentError) が出る。 あー,そういえば Rails 5.1 までのときも production 環境では環境変数 SECRET_KEY_BASE が必要だったから,それに似た話か。 ともかく「rails credentials:edit をやれ」と言っているみたいなので,そうしよう。

                                                        Rails 5.2 で ActiveSupport::MessageEncryptor::InvalidMessage - Qiita
                                                      • ActiveSupportのconstantizeが便利 - miyohide's blog

                                                        仕事で、Railsプログラムを書いていたとき、 実行するメソッドは同じなんだけど、クラス名だけが違う。例えば、モデルDetailとモデルItemに対してfindメソッドを実行したい。実行するモデルを動的に決めれたら楽なんだけどなぁ。 っていう場面に遭遇して、あれこれ探してみたら、ActiveSupport::Inflectorにconstantizeというメソッドがあることを知りました。 使い方は、簡単。例えば、モデルとしてItemってものを定義していたとき、"Item".constantize.find(1)ってやると、 ruby-1.9.2-p290 :013 > "Item".constantize.find(1) Item Load (0.4ms) SELECT "items".* FROM "items" WHERE "items"."id" = ? LIMIT 1 [["id"

                                                          ActiveSupportのconstantizeが便利 - miyohide's blog
                                                        • activesupport 3のblank?メソッドを使用するにはrequire 'active_support/core_ext'としないとNoMethodErrorになるので注意 - YomuKaku Memo

                                                          ActiveSupportの blank? メソッドは、対象のオブジェクトの内容がnilまたは’’の場合にtrueを、さもなければfalseを返してくれる便利なメソッドです。 Railsを使用していない、ごく普通のrubyのスクリプトの中でもactive_supportをrequireするとblank?メソッドを使用することができます。 より正しく書けば、activesupport 2の時代には require active_support によってactivesupportを読み込むことにより、blank?メソッドを使用することができましたが、activesupport 3になって以降、 require active_support だけではblank?メソッドを使用できなくなっていました。 require active_supportだけではblank?メソッドが使用できない実例 ac

                                                          • ActiveSupport::Configurable の話 - scramble cadenza

                                                            イントロ よく設定ファイルで見るクラスを簡単に作れる module ActiveSupport::Configurable の紹介 使い方は、rails/configurable.rb at master · rails/rails のコメント文を読んだほうが早い。 よくあるやつ 具体例を幾つか紹介。 引数が違ったり、ブロック引数有り/無しだったり、メソッド名が違う等の差はあれど、どれも似ている vagrant Vagrantfile を拝借 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "centos7" config.vm.network "private_network", ip: "192.168.33.10" .... end rails config/environments/dev

                                                              ActiveSupport::Configurable の話 - scramble cadenza
                                                            • ActiveSupport::Concern と、Module#concerning - Qiita

                                                              Rails 4.0 -> concerns ディレクトリ Mix-in 用のモジュールを置くディレクトリ concerns が定義された app/models/concerns app/controllers/concerns それぞれ、モデル、コントローラーの Mix-in 用のモジュールを置く 何が得なの? models や、controllersでしか使わない module は、concerns ディレクトリに置くというルールができた lib になんでも置いちゃう病が少し良くなる lib に色々置かれてて、何に使うコードなのかよくわからないのが色々あるという状況が少し良くなる もしくは、勝手に独自のディレクトリに置かれるということが無くなった

                                                                ActiveSupport::Concern と、Module#concerning - Qiita
                                                              • Rails: present?より便利なActiveSupportのpresenceメソッド(翻訳)|TechRacho by BPS株式会社

                                                                Rails: present?より便利なActiveSupportのpresenceメソッド(翻訳) Active SupportはRubyのコアライブラリにメソッドをたくさん追加するので、何かと非難が集中します。特に評判がよろしくないのは、RubyのObjectクラスへのパッチです。 RubyのあらゆるオブジェクトはObjectのサブクラスなので、Objectクラスにメソッドを追加すればコードのあらゆるオブジェクトにそのメソッドが追加されることになります。 Active Supportでの拡張に関するドキュメントでもう少し詳しく見てみましょう。 そうしたメソッドのひとつが#presenceです。これはお馴染みの#blank?(訳注: #empty?のエイリアス)や#present?に比べて馴染みの薄いメソッドです。 Rails API: presence -- Object Rails

                                                                  Rails: present?より便利なActiveSupportのpresenceメソッド(翻訳)|TechRacho by BPS株式会社
                                                                • いつも忘れるRubyの include, prepend, extend の意味。そしてActiveSupport::Concernについても。 - Qiita

                                                                  module M def instance_method_a; puts "Called M!"; end end # モジュールM を KlassI/KlassP/KlassE にそれぞれ include/prepend/extendしてみた。 # さらに同名のインスタンスメソッドも定義してある。 class KlassI include M def instance_method_a; puts "Called I!"; end end class KlassP prepend M def instance_method_a; puts "Called P!"; end end class KlassE extend M def instance_method_a; puts "Called E!"; end end puts "=== included? ===" # include

                                                                    いつも忘れるRubyの include, prepend, extend の意味。そしてActiveSupport::Concernについても。 - Qiita
                                                                  • NAMAKESUGI | Rails3 ActiveSupport::Concern

                                                                    FlexやRuby on Railsなどで使い方とかを自分が後でわかるようにメモしておくブログ。最近はFlex系に飽きてます。 カテゴリ: Rails RailsのActiveSupport::Concern ActiveSupport::ConcernはRubyで機能拡張や共通で利用する部分を切り出し、module化するときによくやる方法である self.included内の処理を簡潔にするための機能です Rubyのみの機能で実装した場合 以下のようなコードがあるとします このコードはこのmodule Mをincludeしたクラスにクラスメソッドmy_class_method及びmy_instance_methodを追加するものです module M def self.included(base) base.extend ClassMethods base.send(:include,

                                                                    • Rails 2.0 の ActiveSupport の 1.second とかが地味に変わっている件 - tmaeda 日記

                                                                      _ Rails 2.0 の ActiveSupport の 1.second とかが地味に変わっている件 Rails 1.2.x の場合 $ ruby script/console >> 1.second => 1 >> 1.second.class => Fixnum Rails 2.0.x の場合 $ ruby script/console >> 1.second => 1 second # ん? Fixnum じゃなくなったのか!? >> 1.second.class => Fixnum # え! Fixnum なんだ??? というわけで、解析ですが、 その前にまずは Rails 1.2.x 系だとどういう定義 だったかを見てみましょう。 Rails 1.2.x のおさらい module Time def seconds self end というのが定義さ

                                                                      • ActiveSupport::Concernの意味と歴史

                                                                        Takuto Wada @t_wada @june29 伝統的には「関心事」ですかね…? Crosscutting Concern とか Core Concern とかの訳語に使われることが多いです。 2013-01-23 14:23:42 OHWADA Jun🚿 @june29 @t_wada 反応ありがとうございます!なんとなくわかってきたような気もしますが、なぜ ActiveSupport の中のこの Module が Concern という名前なのかは、まだ自分の言葉で説明できるほど腑に落ちてきていません…!引き続き考えてみます! 2013-01-23 14:29:38

                                                                          ActiveSupport::Concernの意味と歴史
                                                                        • Rails 4の非同期キュー: ActiveSupport::Queue - memo.yomukaku.net

                                                                          Rails 4から標準で非同期のキューが使えるようになるようです。 Railsの世界にはすでにdelayed_jobやresqueのようなgemがあり、バックグラウンドでジョブを実行することができました。 Initial queue implementationというコミットからは、標準で非同期のキューが使えるようになっています。 これでRailsでもnon-blockingに振舞うアプリや、遅いと思われにくいアプリを書きやすくなると思われます。ActiveSupport::Queueについてはhttp://edgeapi.rubyonrails.org/classes/ActiveSupport/Queue.htmlにより詳しく書かれています。 ActiveSupport::Queueの使い方 例えばPutsTitleというジョブのためのクラスがあり、bookのtitleを出力するだけの

                                                                          • Rails: ActiveSupport::Inflectorの便利な活用形メソッド群|TechRacho by BPS株式会社

                                                                            こんにちは、hachi8833です。 Active Support探訪シリーズは、前回のString#pluralizeで扱ったActiveSupport::Inflectorの便利メソッド群を概観します。 今回のメソッド 今回は、初めてcore extension以外のメソッドにお邪魔することになります。 Rails API: ActiveSupport::Inflectorのメソッド ディレクトリ配置: https://github.com/rails/rails/blob/7-0-stable/activesupport/lib/active_support/inflector/methods.rb 条件 Railsバージョン: 7-0-stable(更新時点では7.0.4.3) Rubyバージョン: 3.2.2 🔗 Rails 7.0のActiveSupport::Inflect

                                                                              Rails: ActiveSupport::Inflectorの便利な活用形メソッド群|TechRacho by BPS株式会社
                                                                            • ActiveSupport で実装されてるメソッドを眺めた - こしごぇ(B)

                                                                              かなり見落としてる。core_ext ら辺からいくつか。 Range#overlaps? 範囲が重なっているか。 (001): >> (1..3).overlaps?(0..1) => true (002): >> (1..3).overlaps?(1..3) => true (003): >> (1..3).overlaps?(3..4) => true (004): >> (1..3).overlaps?(4..5) => false String#exclude?, Enumerable#exclude? include? の逆。 (001): >> [1, 2, 3].exclude?(4) => true (002): >> [1, 2, 3].exclude?(3) => false String#squish, String#squish! ホワイトスペースを圧縮するやつ。

                                                                                ActiveSupport で実装されてるメソッドを眺めた - こしごぇ(B)
                                                                              • ActiveSupport::Concern - Aerialarts

                                                                                以前書いたモジュールの特異メソッドをincludeして使うと同じことが、ActiveSupport::Concernを使うことでもうちょっと綺麗に書ける。 module A extend ActiveSupport::Concern included do # Aがincludeされた際に、includeしたクラスのコンテキストで実行される end module InstanceMethods def instance_method_of_a p "instance_method_of_a" end end module ClassMethods def class_method_of_a p "class_method_of_a" end end end class B include A end こんなモジュールをとあるクラスBでincludeすることで、 InstansMethods

                                                                                • GitHub - matthewrudy/memoist: ActiveSupport::Memoizable with a few enhancements

                                                                                  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

                                                                                    GitHub - matthewrudy/memoist: ActiveSupport::Memoizable with a few enhancements