2017-01-01から1年間の記事一覧

CSS Transform Scaleを使うと画像や文字がちらつく問題

参考ソース 参考ではちらつかないのですが… ホバーしたら大きくなる仕様 <div class="cf"> <div class="image-container"> <img class="image" src="http://via.placeholder.com/350x150"> </div> <div class="image-container"> <img class="image" src="http://via.placeholder.com/350x150"> </div> <div class="image-container"> </div></div>

Wordpress のデータベースをimportしようとしてUnknown collation: 'utf8mb4_unicode_520_ci' と怒られる問題

MySQLのバージョンの違いぽい ローカルは5.6、インポートしようとしたのが5.5 5.6では照合順序に utf8mb4_unicode_520_ci があり 5.5では対応していない SQL文の中から _520 を削除してあげれば大丈夫とのこと varchar(255) COLLATE utf8mb4_unicode_520_ci …

wordpressの$post->post_dateの日付の表示形式を変更したい

strftimeが使えるのかと思ったら使えなかったので mysql2dateを使う post_date); ?> フォーマットはstrftimeと同じみたいです PHP: date - Manual

Chrome63 .dev ドメインを強制的にHTTPSに書き換える問題の解消 HSTS

解決策 別のドメインを使うようにしましょう 回避法はあるけど色々とめんどくさいので .local などに変えてしまえば良いようです 今回のHSTS問題 Chromeでhttpからhttpsに勝手にリダイレクトされる問題の解消[SSL] - ノンカフェインであなたにやさしい ロー…

RailsでEnum元の数値を取得する

以下の設定の場合 class User < ActiveRecord::Base enum role: { admin: 1, viewer: 2, other: 3 } ... Rails5の場合 user = User.create(role: 1) user.role_before_type_cast # => 1 # もしくは user.class.roles[user.role] # => 1 Rails4以前は user = …

libreadlineのエラーでrails consoleが動かない問題

解決法 とりあえず解決した方法。 無いぞと言われてるパスにシンボリックリンクを張る ln -s /usr/local/opt/readline/lib/libreadline.dylib /usr/local/opt/readline/lib/libreadline.6.dylib 出たエラー /Users/user/.rbenv/versions/2.4.0/lib/ruby/2.4.…

macOSをHighSerriaにアップグレードしたらVagrantやVirtualBoxが動かなくなった

解決法 システム環境設定 -> セキュリティとプライバシー -> いくつかのシステムソフトウェアの読み込みがブロックされました -> 許可 Oracle America inc にチェック 状況 vagrant up したら何やら怒られた vagrant up Bringing machine 'default' up with …

Rails RansackでNULLS LASTでsortする

Ransackのconditionには入れられないらしい NULLS LASTでsortするには Ransackの外側で普通にOrder指定する Model.search(conditions).result.order('column DESC NULLS LAST') 脱Ransackしたい 参考 How to add NULL LAST to sorts · Issue #443 · activere…

RailsでPostgreSQLにNULLS LASTのインデックスを追加する方法

タイトルママ nulls lastのインデックスを作りたいけどなかなか見つからなかったので書きました。 migration にこれ add_index :table, :column, order: { column: 'DESC NULLS LAST' } 参考 PostgreSQL: Ordering, NULLs, and indexes - makandropedia 元の…

Reactで Uncaught TypeError: Cannot read property 'setState' of undefined と怒られた時の対処方

コンストラクタで明示的にthisをbindして上げる必要があるらしい constructor(props) { super(props); this.onChangeValue = this.onChangeValue.bind(this); } 参考 ES6でReact使ってたらsetStateがundefinedとか怒られた件 - とっしぃのTech Memo Reactで …

Railsでall_hourメソッドが欲しい

Railsの時間関係の便利なメソッド達 all_month, all_day などなど… でもall_hour がない 作ってしまおう class ActiveSupport::TimeWithZone def all_hour beginning_of_hour..end_of_hour end end Time.current.all_hour # => Mon, 26 Jun 2017 19:00:00 JS…

RailsでDBに配列Arrayを保存する

RailsでDBに配列を保存する方法 serialize :column_name を指定 RailsでDBに配列を保存する方法(サンプルコード) class Hoge < ApplicationRecord serialize :arr end hoge = Hoge.new(arr: [1, 2, 3]) puts hoge.arr # => [1, 2, 3] Arrayと明示するとこう…

Railsのpartialに変数を渡す方法

<%= render partial: 'hoges/index', locals: { moge: @user.moge } %> localsで変数を指定するだけ 部分テンプレートでmogeが使えるようになります。 renderの後のpartialも必要。忘れそう… # hoges/index.html.erb <%= moge %>

Railsでprimary_keyとforeign_keyの両方を指定して主キーではないカラムで関連付けする

こんな関連付けのモデルがあったとして class Atable < ApplicationRecord has_one :btable has_one :ctable end class Btable < ApplicationRecord belongs_to :atable end class Ctable < ApplicationRecord belongs_to :atable end bからcを呼び出すのに …

Huawei mate9でGoogleカレンダーの予定が勝手にキャンセル、辞退されるバグ

Huawei mate9にGoogleアカウントをひも付けたら勝手に他の人の予定をキャンセルや辞退させる問題がおきました。 調べてみるとHuaweiのデフォルトのカレンダーにG suiteのアカウントを連携させると発生するバグらしい。 なのでデフォルトカレンダーの権限をオ…

電話番号の正規表現はどうしたらいいのか

Railsのアプリを作っていて電話番号のバリデーションをするための正規表現はどう書いたらいいのか悩んだので調べてみました ※細かくやっていますが新しい電話番号や考慮されないパターンがあるかもなのでバリデーションは緩くしておくことをおすすめします。…

Rubyで配列の中央値(メジアン)を求める

Rubyで中央値(メジアン)を求めるコード (a.size % 2).zero? ? a[a.size/2 - 1, 2].inject(:+) / 2.0 : a[a.size/2] 動作確認 a = [3, 5, 10, 23, 88] (a.size % 2).zero? ? a[a.size/2 - 1, 2].inject(:+) / 2.0 : a[a.size/2] # => 10 a = [3, 5, 10, 23, 8…

Rubyで改行、空白を削除する

文字数を取得する時などに改行や空白文字を削除したい text = "春はあげぽよ てか、どんどん白くなる山の端らへんが異常に明るくなって、紫の雲が細く風に流されてるの見て、マジパねぇ、ウケる。 夏は神テン 満月がデラヤバなんてあえてウチの口から言うま…

content_tagで閉じがないhtmlタグ<br/>や<img/>を出力する?

<br /> を出力したくて content_tag(:br) とやったら <br></br> と出力されてしまった… content_tagじゃなくてtagを使うとのこと なるほどcontentがあるかないかの単純な話だったらしい tag知らなかった… 結果 無事brタグが出力されました tag(:br) ↓ <br />

Tagging a string as html safe may be a security risk

RuboCop(0.48.1) で Tagging a string as html safe may be a security risk と怒られた htmlタグを直書きせずにcontent_tagを使えということらしい↓ # bad "<p>#{text}</p>".html_safe # good content_tag(:p, text) # bad out = "" out << content_tag(:li, "one"…

RailsでHSTS includeSubDomainsを外す方法

Rails5からforce_sslを設定しているHSTSでサブドメインまで対象にされてしまうようで設定から外したい config/initializers/new_framework_defaults.rb に以下を追加でサブドメインを外すことができます Rails.application.config.ssl_options = { hsts: { s…

Chromeでhttpからhttpsに勝手にリダイレクトされる問題の解消[SSL]

なぜかChromeだけhttpからhttpsにリダイレクトされるサイトがあり原因を探していたらこちらの記事を発見 beniyama.hatenablog.jp ChromeがSSLサイトのドメインを覚えて勝手にリダイレクトしてくれているらしい HTTP Strict Transport Security(HSTS)め… 設定…

Rails コントローラーからヘルパーメソッドを呼ぶ [controller,helper]

Railsのコントローラーからヘルパーメソッドを呼びたい view_context を使う view_context.hogehoge ヘルパーをインクルードしたりしなくても使えるみたい

Rails GroupでまとめてCountした結果をHavingを使って絞り込む [ActiveRecord]

COUNT(*) した結果で絞り込む方法 Havingを使う Hoge.group(:user_id).having('count(*) > ?', 5).count

JavaScriptでオブジェクトの要素数を取得、空判定をする Object,length,blank

jsのObject.lenghtがない… オブジェクトの要素数を取得する方法 Object.keys を使う var obj = {}; console.log(Object.keys(obj).length); // => 0

郵便番号から住所を自動入力するZipaddrxを任意のタイミングで動かす[Js,React]

郵便番号から住所を自動入力するZipaddrx zipaddr.com Jsを呼んでおけば勝手に動いてくれるんですがReactを使っていてonload以外のタイミングで動かしたくなったのでその時の対処法です。 任意のタイミングで初期化 Zip.x(); これだけ ReactでZipaddrを使う…

JavascriptのObjectをeachしたい

Javascriptでオブジェクトをeachで回したい時に array同様にforEach使おうとしたらダメだった ダメなパターン obj.forEach(function (v,i) { console.log(i, ':', v); }); 普通にforを使うパターン for (var key in obj) { if (obj.hasOwnProperty(key)) { c…

Railsでdevelopmentのエラー画面をproductionと同じにする

config/environments/development.rb ~~~ consider_all_requests_local = false ~~~ consider_all_requests_local を false にするだけ Configuring Rails Applications — Ruby on Rails Guides

Rubyの多重代入 ,(カンマ)で区切られた代入の挙動

こんなやつが出てきて挙動が分からず困っていたら多重代入というやつらしい。 a, b = Hoge.moge 多重代入についてまとめます。 左辺が1つで右辺が複数の場合 配列に変換される a = 1, 2 #=> [1, 2] a #=> [1, 2] 左辺、右辺ともに2つの場合 左辺の各変数に右…

herokuでworkerだけをrestartする方法

heroku ps -a myapp まずはプロセスを確認 $ heroku ps -a myapp === web (Standard-1X): bundle exec puma -C config/puma.rb (1) web.1: up 2017/03/06 00:00:00 +0900 (~ 10h ago) === worker (Standard-1X): bundle exec sidekiq -C config/sidekiq.yml …