2015年12月16日のブックマーク (5件)

  • Enumerable#each_slice (Ruby 3.3 リファレンスマニュアル)

    each_slice(n) -> Enumerator[permalink][rdoc][edit] each_slice(n) {|list| ... } -> self n 要素ずつブロックに渡して繰り返します。 要素数が n で割り切れないときは、最後の回だけ要素数が減ります。 ブロックを省略した場合は n 要素ずつ繰り返す Enumerator を返します。 [PARAM] n: 区切る要素数を示す整数です。 例 (1..10).each_slice(3) {|a| p a} # => [1, 2, 3] # [4, 5, 6] # [7, 8, 9] # [10] [SEE_ALSO] Enumerable#each_cons

    kent-where-the-light-is
    kent-where-the-light-is 2015/12/16
    “引数nで指定した数の要素を繰り返し取り出して、ブロックを実行します。”
  • grep の Ruby 版『rak』が便利な件 | JAM☆ぱん

    一定期間更新がないため広告を表示しています

    grep の Ruby 版『rak』が便利な件 | JAM☆ぱん
    kent-where-the-light-is
    kent-where-the-light-is 2015/12/16
    “デバッグ中にエラー出たときとか、該当ファイルや該当文字列を; rak 文字列で検索することができます”
  • 隠れたフォームのバリデーションに失敗 - Qiita

    とある入力フォームを作った時の話ですが、送信ボタンを押しても一向に送信されず、原因をあれこれ探っていくと、Chromeのエラーコンソールに何やら出力されていました。 An invalid form control with name='foobar' is not focusable. そして、この問題になったフォームオブジェクトは<div style='display:none'>の中、つまりユーザーからは知覚も操作も不能な場所に置かれていて、そしてHTML5のバリデーション属性がかかっていました。 対策法 もちろん最初からこんなフォームを作ることはないとは思いますが、JavaScriptで制御しているとこのように「見えないコントロールがinvalidとなる」ということは発生してしまいます。対策法を検討してみる過程で、いろいろなものがありました。 novalidate、formnoval

    隠れたフォームのバリデーションに失敗 - Qiita
    kent-where-the-light-is
    kent-where-the-light-is 2015/12/16
    “An invalid form control with name='foobar' is not focusable.”
  • Active Job の基礎 - Railsガイド

    ガイドでは、バックグラウンドで実行するジョブの作成、キュー登録 (エンキュー: enqueue)、実行方法について解説します。 このガイドの内容: ジョブの作成方法 ジョブの登録方法 バックグラウンドでのジョブ実行方法 アプリケーションから非同期にメールを送信する方法 1 はじめに Active Jobは、ジョブを宣言し、それによってバックエンドでさまざまな方法によるキュー操作を実行するためのフレームワークです。ジョブには、定期的なクリーンアップを始めとして、請求書発行やメール配信など、あらゆる処理がジョブになります。これらのジョブをより細かな作業単位に分割して並列実行することもできます。 2 Active Jobの目的 Active Jobの主要な目的は、あらゆるRailsアプリケーションにジョブ管理インフラを配置することです。これにより、Delayed JobとResqueなどのよう

    Active Job の基礎 - Railsガイド
    kent-where-the-light-is
    kent-where-the-light-is 2015/12/16
    “4 ジョブを実行する アダプタが設定されていない場合、ジョブは直ちに実行されます。 4.1 バックエンド Active Jobには、Sidekiq、Resque、Delayed Jobなどさまざまなキューイングバックエンドに接続できるアダプタがビルトイン
  • transaction - リファレンス - - Railsドキュメント

    1.0.0 1.1.0 1.1.1 1.1.6 1.2.0 1.2.6 2.0.0 2.0.1 2.0.3 2.1.0 2.2.1 2.3.2 2.3.8 3.0.0 3.0.5 3.0.7 3.0.9 3.1.0 3.2.3 3.2.8 3.2.13 4.0.0 4.1.0 4.2.1 説明 分割不可能な複数のレコードの更新を1つの単位にまとめて処理すること 特徴 データベース内の情報の整合性を保つための手段 複数のデータベースにまたがる分散トランザクションはサポートしていない 使用するにはデータベースがトランザクションをサポートしていることが必要 使い方 ActiveRecord::Base.transaction do 例外が発生するかもしれない処理 end 例外が発生しなかった場合の処理 resque => e 例外が発生した場合の処理 モデル.transaction do 例外が

    kent-where-the-light-is
    kent-where-the-light-is 2015/12/16
    “分割不可能な複数のレコードの更新を1つの単位にまとめて処理すること”