日常

ケ・セラ・セラ

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

rails new skip-いろいろ して react_on_rails を使おうとた場合に遭遇したあれこれ

これは整理して書いておこうと思ってもう2ヶ月経ってしまったものなので、この際ちらかったままに公開だけしておこうというメモです。 意気込んで、 rails new app --skip-action-cable --skip-action-mailer --skip-bundle --skip-javascript --skip-listen…

RailsでRuby2.4のHash#compactを使うp-rがある

読みました。短くまとめます。 Hash#compact and Hash#compact! now part of Ruby 2.4 | BigBinary Blog これがマージされると、Ruby 2.4 で加わる Hash#compact / Hash#compact! を Rails でも使うようになる。 Use Hash#compact and Hash#compact! from Ru…

yaml_checker という Gem を作りました

github.com https://rubygems.org/gems/yaml_checker ファイル名かディレクトリを指定すると、.yml / .yaml 拡張子のファイルのみ YAML.load_file して回って、例外を起こしたものをまとめて標準出力する。というやつです。 $ yaml_checker path/to/director…

capybara, poltergeist, phantomjs で js: true なテストをする

save_and_open_page や save_screenshot する場合には、 html の charset が設定されていないと日本語が文字化けてしまいました。 そういう場合には書きましょう。 <meta charset="UTF-8" /> まず install phantomjs (Ubuntu での例です) $ wget https://bitbucket.org/ariya/phantom</meta>…

trelloのカードの並び順みたいなのをどう実装しているか

trello clone 的なやつを作っているんですが、 drag & drop でカードの並び替えとかした時の並び順をどう管理しようかと考えていた。 そこで trello の動きをちょっと見てみたらこんな感じだった。 たとえばこんな風に、あるリストに 3つのカードが登録され…

Rails5でforce_sslのredirect status, HSTS header のコントロールが便利になる

読んだので簡単にまとめてみる試み。force_ssl 関連。 Rails 5 adds more control to fine tuning SSL usage | BigBinary Blog Rails で HTTPS を強制する config.force_ssl = true' を設定すると、middleware stack にActionDispatch::SSL` が挿入されるわ…

querySelectorとJQueryでcssをいじるメモ

querySelector で foo = document.querySelector("#bar li a.baz"); color = foo.style.color; bg_color = foo.style.backgroundColor; foo.style.color = bg_color; foo.style.backgroundColor = color; foo.style.borderStyle = "solid"; foo.style.border…

転職ドラフト登録してみている

おもしろそうと思って今まさに登録してみているけれど、登録に際していくつか入力することがあって、入力しながら色々と考えることもあったので書き残しておこうと思う。 自信を持って人より秀でていると言える点は? という質問があって、選択肢から最大 3…

Rails5 で alias_method_chain が deprecated

Rails 5 deprecates alias_method_chain in favor of module prepend | BigBinary Blog 短くまとめてみる試み。 rails5 で alias_method_chain が deprecated となる。Module#prepend を使っていくことになる。 また、ruby 2.1 で Module#include と Module#…

form submit ボタンにリンクっぽくfont awesomeを使う

css

メモです。 例えばこんな、fontawesome のハートマークをクリックしたら submit して likes/create or likes/destroy したいような状況ですが、 <%= form_for(current_user.likes.build, html: { class: "form-inline" }) do |f| %> <div><%= hidden_field_tag :a</div>…

HerokuでRubyのバージョンを指定する

heroku に deploy したアプリがこけていて、なんだ?と思ったらぼっちオペレーターを使ったからだった。そういえば ruby のバージョン指定を忘れて 2.2.4 が使われていた。 やり方は、Gemfile に書けばよい。 source "https://rubygems.org" ruby "2.3.1" # …

SQLServer の default port は 1433

TCP port 1433 is the default port for SQL Server. メモです。1433 らしい。以下の説明を読んだ。 Default SQL Server Port - Stack Overflow

bundle install(with native extensions)に失敗する(Text file busy)

bundle install をすると、ことごとく with native extensions な gem が失敗するという状況に陥って困っていた。 こんなエラーメッセージが出ていて、 Text file busy @ unlink_internal - ./siteconf20160808-20166-29ij1u.rb 自分は virtual box の share…

最近の rails3.2 のはなし

ruby 2.3 から加わった Hash#to_proc がある。 この影響で、rails 3-2-stable ではこのような修正が merge された。これを含む 3.2系のリリースはまだされていない。 Associations do not call .to_proc on Hash #25043 4-2-stable にも master にもこのよう…

ruby 2つのファイルを一行ずつ交互にマージしたい

ひとつめのファイル samplefile1 1 2 3 4 5 6 7 8 9 ふたつめのファイル samplefile2 one two three four five six seven eight nine ten eleven とあった時に、こんな結果がほしい。という時。 1 one 2 two 3 three 4 four 5 five 6 six 7 seven 8 eight 9 …

YAMLファイルに別のYAMLファイルの値を参照、設定したい

こういうことがしたかったのですが、 # a.yml id: 1 type: foo description: baz # b.yml id: 2 type: bar description: (ここで a.yml の description の値を参照したい) こんな風にしました。 YAML.add_domain_type(nil, "include") do |type, val| YAML.l…

css 新旧 clearfix の書き方に関するメモ

css

最近は css も色々書いている。というか、渋々色々やっているという面があるのだけど、それは置いておいて。 昔からある css のメンテなどをすることになると、歴史上の色々な書き方に遭遇することもある。その中で clearfix についてメモしておく。まあ知っ…

Emoji に対応してみた

某サービスで Emoji を扱えるようにしてみた。 gemoji を使った。README を見ると大体やりたいことが出来た。 github.com

rails ActiveSupport 便利な String の活用形のメモ

[8] pry(main)> (:user_follows).to_s.singularize => "user_follow" [9] pry(main)> (:user_follows).to_s.pluralize => "user_follows" [10] pry(main)> (:user_follows).to_s.camelize => "UserFollows" [11] pry(main)> (:user_follows).to_s.classify =…

rails gravatar-ultimate を使う

email, password を入力してもらってユーザ登録できるやつで、 アイコンなど画像ファイルを自分のところで取り扱いたくない。 というケースで gravatar に頼る流れがあります。 https://github.com/sinisterchipmunk/gravatar 実装を見ると、サイズが指定で…

rails limitではなくtakeの使いどころ

limit 使えばいいし、take 使いどころ無いのでは?と思っていました。 先頭 1 件だけほしい時、Model.first すると、order by id ASC LIMIT 1 となります。 Model.limit(1) の場合、order by id しません。 Model.take も同様です。こういう時、take を使う…

input要素のpattern属性に関するメモ

pattern 属性。自分の場合頻繁に使うわけではないので、使うか。と思った時にもう忘れていて結局毎回調べたりして作業が止まるのが煩わしい。 どうせ次も調べるのだろうけど、この辺りを見れば手間も軽減する。ありがたい。 HTML5におけるinput要素のpattern…

地味に便利だと思って使っているシェルalias

sh

これなんですが、(一部から頭悪そうとか聞こえてくる) alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' alias .....='cd ../../../..' alias ......='cd ../../../../..' alias .......='cd ../../../../../..' pwd するとたまに深かったり…

vim 雑に全角文字だけ検索する

vim

/[^\x01-\x7E] のようにする。 ここを見た。 正規表現サンプル(全角文字を検索する)

rails + npm で heroku デプロイするとき

rails アプリを git push heroku master したら npm install もやってほしくて、こうしておいたらうまくいっている。 heroku buildpacks:set heroku/nodejs

Railsでnpmを使う今の所のやり方

自分の場合こうやっていますというものです。 Rails.root に普通に package.json を置き、普通に npm install する .gitignore で /node_modules などしておく application.js はどうしているかというと、 特に問題無ければ require_tree . で全部対象にすれ…

ruby 1行で rescue

最初の行、そうかー rescue でこういう if 文が書けるのかー。と思った。 if (ActionDispatch::Integration::Session.instance_method(:process_with_kwargs) rescue false) let(:send_request) do send http_method, path, params: request_body, headers: …

rails layout に対して個別に値を設定したい時

例えばこう、共通のレイアウトを適用したいけれど、タイトルだけは個々のものを使いたい。みたいな事例です。 # sample_layout.html.erb <html> <head> <title><%= yield(:title) %></title> </head> <body> <%= yield %> </body> </html> 個々の view で provide しました。 <%= provide(:title, @article.title) %…

rails layout を デフォルト(application.html.erb)から変更したい時

こんな風に使い分けることができる class ArticlesController < ApplicationController def without_layout render layout: false end def presentation render layout: "presentation" end end 某サービスにスライド機能つけようとしています

rails 単純なファイルダウンロード

pathto/down へのリクエストで、Rails.root/download/down.md を d.md というファイル名でダウンロードする適当なサンプル。 適当な Rails.root/pathto/down/down.md を事前に用意して、以下の感じです。 # config/routes.rb get "pathto/down" => "pathto#d…