Railsから通常の方法でCookieに書き込む値は、平文となっているためCookieを盗まれると情報が丸見えになっています。これを回避するために、Railsにはsignedというメソッドがあります。 cookies[:hoge_key] = hoge_value # 暗号化されない cookies.signed[:h…
Railsでは、公式ではありませんが暗黙の了解で「永続Cookie」=「20年後に有効期限の切れるCookie」としています。Cookieに値を保存するにはvalueとexpiresを設定する必要があるので、一般的には「永続Cookie」に値を保存するという意味合いのコードは以下の…
CSS初心者なので色々なところでつまずいていますw .visible-printクラスを使用すると、印刷時→表示・ブラウザ上→非表示 という要素を作成可能 .hidden-printクラスを使用すると、ブラウザ上→表示・印刷時→非表示という要素を作成可能
最初はRailsがなにか悪いことしてるのかと思いましたが、どうやらBootstrapの問題だったようです。 解決策は単純で、Bootstrap内で定義されている@printオプションを別の場所で打ち消してあげること。 www.magical-remix.co.jp
URLをすっきりさせたかったので、この記事は非常に助かりました。 www.mk-mode.com
stackoverflow.com Rangeを使ってエレガントに書ける。凄い!
Herokuではsqlite3をサポートしていないため、開発環境(DBにはデフォルトでsqlite3を使用)をそのままデプロイするとハマります。 以下2つのファイルを弄った後、Herokuにプッシュするとうまくいきました。 Gemfile group :development do ・ ・ ・ # 上の方…
以下のチュートリアルをやっていたんだけど、色々見慣れない表記が出てきたのでメモ。 www.youtube.com このあたりがとても役に立ちました。 blog.livedoor.jp qiita.com www.rubylife.jp
症状 タイトルの通り、hogehoge.jsファイルをjavascriptsファイル内に格納しているとき、ページ初回読み込み時ではなくページリロード時にそれらjsの内容が初めて読み込まれます。 解決策 qiita.com 毎度、Qiitaさんお世話になります(`;ω;´)
失敗するパターン flash[:success]等を使わずに、redirect_toから直接flashメッセージを出力すると失敗します。 redirect_to @hogemodel, success: 'Hoge Model was successfully created.' 解決策① 王道ですが、flashを使ってあげればOKです。 flash[:succe…
ハマったのでメモ。 ※以下、RailsサーバのIPアドレスをx.x.x.xとします。 いつもの方法 rails s http://localhost:3000 → OK http://x.x.x.x:3000 → NG この方法では他のマシンどころか、Railsサーバ上からも自分のIPアドレスでアクセスできませんでした。 …
CODE COMPLETE リーダブルコードと合わせ、プログラマーのバイブルとも呼べる本。 本の中で登場するノウハウは、特定言語に依存したものではなくユニバーサルに使用できるものとなっており、上巻では「基礎固め」「コードの品質」「変数」「ステートメント」…
Ruby on Railsチュートリアルで、これは覚えておかないといつか間違えそうだと思った時間比較があったのでメモ。 以下のコードの意味 #reset_sent_atはDateTime型 reset_sent_at < 2.hours.ago これは、「reset_sent_atが2時間以上前か」どうかを比較してい…
メタプログラミング? ざっくり言うとプログラムでプログラムを作る。 Rubyはメタプログラミングの柔軟性が強力すぎるゆえ、 Ruby on Railsはじめ色んな所で「黒魔術」と呼ばれている。 実際どんなの? sendメソッドを使用し、引数にオブジェクトが持つメソ…
rails generateの動作 generateコマンド自体が失敗したり、generateした後にもっといい名前を思いついてやり直したくなったり、そんな時の戻し方。 基本的に、generateコマンドを実行して作成されるファイルは一つだけじゃない。routesファイル等既存のファ…
Rubyクラス名はキャメルケース、ファイル名はスネークケースという謎…
Paizaの通常問題は外部で回答を公開することが禁止されていますが、POHはその限りではないそうです。 応募期間が終了したので、自分の提出したコードと考え方を貼ってみます。使用言語はC#。 ※もちろんこれがベストな解法か全く自信はありません。 どなたか…
Arrayの静的メソッドを使用 Array.Sortメソッドで配列を操作すると、破壊的変更となる。 → 元の配列を直接イジる。 Array.SortのアルゴリズムはQuickSort。計算時間は平均O(n log n)、ワーストO(n ^ 2)。 昇順の場合 int[] scores = new int[] {1,5,4,2,3}; …
値型、参照型、ref、out TOACHさんの記事で、値型と参照型それぞれの場合について refとoutの使い分けがわかりやすく書かれています。 C++から移ってきたアナタへ。C#のref, outの使い方について。1e3)g=1e3;else if(200>~~g)g=200;f.height=g}if("link"===d…
Paizaのハッカソンで、stringとして渡されるスペース区切りの数字を なんやかんやしたいパターンが多かったので備忘録。 結論から言うとLinq最強説です。 ※以下コードの使用にはusing System.Linq;が必要です。 string配列をint配列に変換 まずは通常パター…
paizaのオンラインハッカソンに挑戦中。使用言語はC#。 格闘の末、水着(paizaランクA相当)の問題をクリアしたよ! 興味のある人はぜひ! paiza.jp
ワンライナー? ワンライナー(One-liner)とは英語の意味の通り、1行で終わらせる処理のことである。 (ただし、手間のかかる処理をワンステップでお手軽に終わらせる表現も ワンライナーと呼ぶので広義では必ずしも1行で終わるわけではない。) Rubyで値を特定…
文字列と文字列.inspectの比較 >> puts :name, :name.inspect name :name >> puts "It worked!", "It worked!".inspect It worked! "It worked!" putsと.inspectの組み合わせはpで代用できる >> p :name # Same output as 'puts :name.inspect' :name
Railsで使える便利な短縮記法 $ rails server →$ rails s $ rails console → $ rails c $ rails generate → $ rails g $ bundle install → $ bundle $ rake test → $ rake
当然っちゃ当然なんだけど、継承して作ったクラスは継承元のinitializeも呼んでいる。 以下の様にベースのクラスUserとUserを継承したSuperUserというものを作ってみる。 class User @@count =0 # Class var def initialize(name) @name = name # instance v…
Ruby on Railsで最初に見るべきサイト Railsフレームワークの骨組みが、非常にわかりやすく解説されていてすごく良かった! openbook4.me
クイック解決法 以下のように、ENABLE_BITCODEを検索し"Yes"→"No"にすれば解消される。 原因 (調査中) 毎回同じことするのは面倒くさいので、原因突き止めて根本解決法をここに書く予定。 リンカーがどうのと表示されてるのでUnityでビルドするときの設定の…
ec2-userで無事に初SSHできたら、まずはrootのパスワードを設定しよう。 > sudo passwd これでOK。 ※2015/11/04追記 「みたまま」モードで書いた記事をMarkdown記法で編集しようとしても 出来ないのね… 上記のようなコマンドは次記事以降インラインコードで …
AWSは公式ドキュメントの充実っぷりが素晴らしい。 ひとまずApacheでページ表示するまで5分とかからない。 docs.aws.amazon.com
てすとてすとー テストですー