SakuraWi - BLog

みんなのウェディングのエンジニア。聴いたお話をまとめておく倉庫的な。スタックストックスタック!

技術

mac購入後のセットアップ

やったこと全部まとめ mac全般 英かなダウンロード 電池表示を数値で出るようにする ライブ変換OFF caps lockをcontrolにする リピート入力認識までの時間を短いにMAX キーのリピートも速いにする トラックパッドのタップをクリックできるようにする 軌跡の…

スクロールによってヘッダーやフッターを固定するためのcss position stickyが便利

どうも、櫻井です。 最近position stickyなるものを知りまして、これがまた便利だなと思って共有するための記事を書きました。 概要 この方の記事がめちゃめちゃわかりやすいです。 動画もついているし、デモ用のコードがくっついているので。 position: sti…

【Ruby on Rails】sidekiqをrspecでテストしてみよう

sidekiqを用いてバックグランドジョブをさばきたい人のための備忘録。 tips集みたいな感じで残します。 sidekiqって? まずはやっぱドキュメントだ。本物をみよう。 https://github.com/mperham/sidekiq バックグランドジョブを管理、実行するためのライブラ…

ナチュラルキーとサロゲートキー

ナチュラルキーとサロゲートキーについて書きます。 プライマリーキーを理解する ナチュラルキー サロゲートキー なぜrailsはサロゲートキーか? プライマリーキーを理解する プライマリーキーとは、テーブルの中のレコードを特定するためのキーです。 よう…

引数の順番によらない設計をする方法【Ruby on Rails】

引数の順番によってコードの処理が決まっており、そこの部分の変更によって様々な箇所を修正する必要がでてくるケースがあります。

達人に学ぶSQL徹底指南書

書きかけなところがありますが、年末アウトプットということで公開にしておきます。 達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)posted with ヨメレバミック 翔泳社 2008-02-07 Amazon楽天ブックス 全体の思惑 サブクエリの理解は必須 相関サブクエリはパフ…

radio_buttonのチェックを入れる方法について【Ruby on Rails】

Ruby on Railsにおいて、form_forをしつつradio_buttonを設置するケースは非常に多くあると思います。 フォームを作成するケースで元からチェックを入れたい(チェック済み)場合、確認画面から戻って来た時にチェックがあらかじめ入っている処理にしたい場合…

新卒入社の僕が半年で受けたコードレビューとコメント

みんなのウェディング Advent Calendar 2017の8日目の記事です。 みなさんこんにちは、新卒エンジニアの櫻井です。 2017年4月にみんなのウェディングに入社し、8ヶ月が経過しました。 エンジニアの研修が6月から始まったので、ちょうどエンジニアの業務に携…

【Ruby on Rails】ルーティングを確認する方法

Ruby on Railsを勉強し始めた時に、知っておいた方が便利だと思う「ルーティングの確認方法」についてまとめようと思います。 ルーティングというのは、URLのどこにアクセス(+どんなメソッドで)すれば、何が返ってくるのかを示したものです。 Railsガイドで…

shampers開発記

以前に作っておいたshampersというアプリを最近いじってます。 google analytics導入 独自ドメインにした このあたりは意外と需要ありそうな予感なので、記事にしたい。 非常に粗雑な作りですが、いまの自分だとともかくリリースしちゃえ、というスタイルが…

python入門者の勉強会に参加してみた

こちらにお邪魔してきました!! かなり丁寧で初心者でも安心安全のハンズオンでした。 メンターの方が13名ほどいらっしゃるのはほんとに心強いですね。 Python入門者向けハンズオン #6 - connpass pythonを触った時のメモ python3.6などで起動 type()になげて…

Action Controller の概要読んだ

4パラメータ コントローラのアクションでは、ユーザーから送信されたデータやその他のパラメータにアクセスして何か作業を行なうのが普通です。Railsに限らず、一般にWebアプリケーションでは2種類のパラメータを扱うことができます。1番目は、URLの一部とし…

npmが動かなくて困った

/usr/local/lib/node_modules/npm/lib/config/cmd-list.js:113このエラー勘弁してくれ! module.exports.aliases = Object.assign({}, shorthands, affordances) ^ TypeError: Object function Object() { [native code] } has no method 'assign' at Object.<anonymous></anonymous>…

bashプロンプト長い問題を解決する方法【プロンプト長すぎ説】

bashのプロンプトが長い。やってれん!!!NAGAI!! ということで、編集してみた。 bashのファイルで編集する bashというものは、だいたい `.bash_profile` か `.bashc` をいじればなんとなるものである。ちなみにこいつらの違いはログイン時に一回発火するも…

配列同士のincludeをする方法

通常の.include?では、引数の中身は1つしか渡せません .include("aaa", "bbb")とはできない。 irb(main):004:0> ["2", "3", "4"].include?("3") => true irb(main):005:0> ["2", "3", "4"].include?("3", "4") ArgumentError: wrong number of arguments (g…

フォームオブジェクト

フォームオブジェクトを書く理由、それはすなわち fatになるcontrollerをスリムにするためである。 controllerには,searchメソッドなどを書きがちで、どんどん肥大化する傾向にある def search @hoge = Hoge.where(id: XXX) if id.present? @hoge = @hoge.wh…

ポートフォリオの考え方

最近ちょっとポートフォリオ、について考えることがあって、ちょうど深津さんがツイートしていたので、ここでシェア。 作品ポートフォリオの作り方 | 深津 貴之 (fladdict) | note 誰に、何を見せるか?(つくるか) ちゃんと考えて用意することは大事だな。 …

レイアウトとレンダリング railsガイド

2.2.1 Action Viewを出力する render "edit" or render :edit はedit.html.erbなどのテンプレートの呼び出しを行う layoutの指定 class ApplicationController < ActionController::Base layout "main" #... end などの方法で設定が可能。 個々のレイアウト…

Rails国際化 (I18n) API

tとl I18n.t I18n.l Time.now は、 translate # 訳文を参照する localize # DateオブジェクトやTimeオブジェクトを現地のフォーマットに変換する の意味 遅延読み込み I18のバックエンドは、訳文が初めて参照されるときに遅延読み込みを行います。これにより…

Active Record クエリインターフェイスを読む【Rails Guides】

さてさて、Active Record クエリインターフェイスを読んで行きます。 あ、これ知らなかったなーなんていうことをまとめておきます。 .first(3) とすると3つとれる。 なんだってー バッチ プログラムの一連の流れ あらかじめ決めておいた処理のまとまりのよ…

has_oneとbelongs_toの違い

自身が他のテーブルをたどるキーを所持している場合は、belongs_to 自身が他のテーブルからたどるキーで示されている場合は、has_one belongs_to class Book < ApplicationRecord belongs_to :author end と書くとすると Bookテーブルが、author_idをカラム…

Ruby on Railsガイドを読み進める - validation

Active Record まわり 2.1 acceptance チェックボックス専用のバリデーション 複数個だとどうなるだろ? 2.2 validates_associated アソシエーションを張っているものを一緒にバリデーションしてくれる便利くん validates_associatedは関連付けの両側のオブ…

JISキーボードの英数、かなキーをコマンド扱いできるようにした

会社のPCと家のPCでUS、JISの違いがあり、 コマンドキーの位置でかなりストレスが溜まっていたので ソフトウェアいれて解決させました。 Karabiner-Elementsの本家が「英数/かな」の切り替えに対応したみたい - Qiita かなり便利なやつがあったので、インス…

【RubyonRails】newとbuildの違いについて【alias】

RubyonRailsにおける new と buildの違いについてまとめておきます。 結論から言うと、同じです。 環境 筆者が試した、またこの記事を書いた環境はこちらです。 $ rails -v Rails 5.1.3 newとbuild 基本的な使い方として、 以下のような例があると思います。…

【RubyonRails】tryとtry!の違い【ぼっち演算子&.とは】

RubyonRailsにおけるtryとtry!の違いについて書いておきます。 また、ぼっち演算子とよばれる &.についてもまとめてみました。 tryはActiveSupportで用いられるメソッドになります。 目次 tryとは try と try! try! try tryにはブロックを渡すことも可能 ぼ…

gitのコミット履歴を書き換えよう!wipコミットをまとめたり不必要なコミットを削除する方法

みなさんgit使いこなせていますか? gitのcommitが積み上がるのはいいけど、うまく整理したい! そんな時に便利なコマンドが git rebase -iです。 git rebase rebaseコマンドは基本的にcommitを修正するためのコマンドと言ってもいいでしょう。 git rebase m…

gitのaliasをすると補完が効かない問題を解決

gitをbash上でコマンドを高速に叩こうという記事です。 gitのコマンドにalias(コマンドを置き換えること)をかけるには2通ります。 - gitのconfigで設定する方法 - bashの.bashrcなどのファイルでaliasをかける方法 陥りがちな問題 あるあるかと思うのですが…

controllerで生成したインスタンス変数をテストで参照したい場合

controllerの内にて以下のようにインスタンス変数を扱っているとき、 テストでインスタンス変数を呼び出したいときがある。 def create @shampoo = Shampoo.new(shampoo_params) if @shampoo.save ... end のように扱っていたインスタンス変数の@shampooをテ…

f.hidden_fieldとhidden_field_tagの使い方【Ruby on Rails】

Ruby on Railsで、form_forやform_withタグの中でパラメータを直接フォームから入力させないまま、値を受け渡したい時に使用するものとして hidden_fieldとhidden_field_tagがあります。 controllerで保持しているuser_idを次のアクションに渡したい、なんて…

update_attributesとupdate_columnsの違い【Ruby on Rails】

Ruby on RailsのTutorialで使用されている、update_columns。 そして似たような処理に見える update_attributesがあります。 この二つの違いについて調べてみたことをまとめます。 検索するとqiitaの以下の記事がでてきますね。 どうもこちらの記事によると…