fv17の日記

Webエンジニアの備忘用ブログです。主にWeb界隈の技術に関して書いています。

2018-12-01から1ヶ月間の記事一覧

Rails における内部結合、外部結合

ズバリのQiita記事が沢山あるのでリンク貼り付けRails における内部結合、外部結合まとめ - Qiita

Rails - 複数レコードの一括登録でパフォーマンスを向上させる

JavaでいうaddBatch、executeBatchで一括登録する方法をRailsでもできないかを探した。 activerecord-import gemを使うとRailsでも同様のことが可能とのこと。 利用方法、パフォーマンス比較等 Qiita qiita.com 公式Github github.com

RubyMine - ローカルDBを閲覧する

データベースの中身を確認するときは、rails consoleでちまちま確認するより直接DBを見たい。RailsチュートリアルではDB Browser for SQLiteでデータ閲覧しますが、RubyMineだとSQLite以外のデータベースも対応しています。 やり方 RubyMineからローカルのSQ…

Bootstrap4でFont Awesomeを使う(3のGlyphiconsが使えなくなりました)

Bootstrap4では、Bootstrap3で使えたGlyphiconsが使えなくなり有料化されました。代替案の一つが、Font Awesomeへの移行です。その方法を書きます 公式からリンクをGET 下記リンクを踏むと「Start Using Free」と出てくるのでクリックすると、リンクが出てき…

Rails5でのlocale設定(日本語化、国際化対応)

Rails 5での設定方法 config/initializers/locale.rb I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}').to_s] I18n.config.available_locales = :ja I18n.default_locale = :jarails newした時点でconfig/localesにen.ymlの…

RubyでBuilderパターン

RubyでBuilderパターンを学ぶ良記事 medium.com Javaだが、Builderパターンもいくつかあるよという解説 qiita.com

Ruby + Capybaraでクローラーを作成する

下記の記事の後半が該当qiita.com

pickadate.jsをRailsを使うと「Rack::QueryParser::ParameterTypeError (expected Hash (got String) for param `xxx'):」でエラーとなる

pickadate.jsをRailsで実装したところ、同一パラメータを複数設定してサーバー側に送信しており、400 Bad Request エラーでコケた。 エラー Rack::QueryParser::ParameterTypeError (expected Hash (got String) for param `check_in'): 回避策 github.com次…

可読性の高いHTMLとCSSの書き方

Qiitaの記事qiita.com

Bootstrap - 画面サイズ毎に異なるCSSをあてる

BootstarapのResponsive breakpointsという機能を使うhttps://cccabinet.jpn.org/bootstrap4/layout/overview#responsive-breakpoints

Rails、Ruby - case文を正規表現で分岐させた後にマッチ部分を使う

表題の件をやろうとすると冗長なコードしか書けなかった。 先人がいたため参考にするも、今回は可読性を考慮して冗長なままにする。qiita.com

Railsでtypeahead.jsを使ってオートコンプリート機能を実装する

Railsでtypeahead.jsを使ったオートコンプリート機能(入力補完機能)の実装手順 https://www.virment.com/rails-typeahead-autocomplete/ typeahead.jsのGithub https://github.com/twitter/typeahead.js/ 実装例 http://twitter.github.io/typeahead.js/ex…

Ruby - なぜmapとかcollectとか、エイリアスが沢山あるのか?

ズバリの記事を発見map と collect、reduce と inject ―― 名前の違いに見る発想の違いRubyで「なぜこうなっているのか?」は多くの場合、Lisp、SmallTalk、あとPerl起源が多い気がする。 逆にJavaは世に出た時期がほぼ同じで影響を受けてないから、全然違う…

Ruby、Railsで日付を扱う

下記参照qiita.com

Git - 【stashコマンド】変更分を一時避難し、コミットせずに別ブランチへ移動する

Git

作業中にコミットせずに別ブランチへ移動しなければならなくなった場合の操作方法。 stashは、隠しておくの意味。 一時避難 git stash名前を付けて保存 git stash save "your message"untrackedファイルも含めて退避 git stash -u 一覧確認 git stash list …

Git - リモートの最新情報をローカルに反映する(fetchとpull)

Git

リモート(GIthubなど)から最新情報を取得し、それをローカルに反映させるには2つの方法がある。一つがfetchでもう一つがpull。 fetch fetchはリモートリポジトリからローカルリポジトリに最新情報を取得する。 この時、ワークツリー(ローカルで実装している…

AWSで無料枠利用なのに毎月4$弱課金されていた件

Elastic IPで毎月4$課金されてた 何も使ってないのに課金された!と叫んでいたら、これを思い出しました。 togetter.com明細にここ数ヶ月、毎月300~400円前後 Amazon Web Serviceの記載があったが、遂に対応。 先人たちに解消方法を学ぶ 下記記事で先人たち…

【オブジェクト指向】単一責任の原則について理解を深める

単一責任の原則(SRP)についての理解を深めてくれる良記事。 SRPに違反しているコードを徐々に改良していく丁寧な解説で非常に分かりやすい。medium.com 記事を紹介する背景 Sandi Metz氏の「オブジェクト指向設計実践ガイド」を数週読了。 しかし、SOLID原則…

Rails - content_tagの使い方

content_tagメモ before <div class="alert alert-<%= message_type %>"><%= message %></div> after <%= content_tag(:div, message, class: "alert alert-#{message_type}") %>

Rails - byebug gemを導入してdebuggerでデバッグする

debuggerの使い方メモ (RubyMineでいいじゃん感) 導入と使い方 byebug gemを導入 debuggerをソースに組み込む Railsを実行するとコマンドラインで該当箇所で止まって色々調査できる Ctrl-Dで抜ける 代表的なコマンド コマンド 説明 eval 変数の値、メソッド…

Rails - テーブルにカラムを追加する

rails g migration add_<カラム名>_to_<テーブル名> <カラム名>:<カラムの型>具体例 rails g migration add_password_digest_to_users password_digest:string